*** markvoelker has joined #openstack-sdks | 00:16 | |
*** markvoelker has quit IRC | 00:49 | |
*** ricolin has joined #openstack-sdks | 01:10 | |
*** gkadam_ has quit IRC | 01:22 | |
*** gkadam_ has joined #openstack-sdks | 01:22 | |
*** gkadam_ has quit IRC | 01:38 | |
*** gkadam_ has joined #openstack-sdks | 01:38 | |
*** markvoelker has joined #openstack-sdks | 01:46 | |
*** whoami-rajat has joined #openstack-sdks | 02:09 | |
*** gkadam_ has quit IRC | 02:11 | |
*** markvoelker has quit IRC | 02:20 | |
*** markvoelker has joined #openstack-sdks | 03:17 | |
*** gkadam has joined #openstack-sdks | 03:41 | |
*** markvoelker has quit IRC | 03:50 | |
*** gkadam has quit IRC | 04:11 | |
*** dave-mccowan has quit IRC | 04:23 | |
*** gkadam has joined #openstack-sdks | 04:28 | |
*** gkadam has quit IRC | 04:35 | |
*** markvoelker has joined #openstack-sdks | 04:47 | |
*** e0ne has joined #openstack-sdks | 05:15 | |
*** markvoelker has quit IRC | 05:21 | |
*** e0ne has quit IRC | 05:42 | |
*** Luzi has joined #openstack-sdks | 05:53 | |
*** markvoelker has joined #openstack-sdks | 06:18 | |
*** markvoelker has quit IRC | 06:51 | |
*** slaweq has joined #openstack-sdks | 06:55 | |
*** tosky has joined #openstack-sdks | 07:17 | |
*** slaweq has quit IRC | 07:20 | |
*** e0ne has joined #openstack-sdks | 07:20 | |
*** dayou has quit IRC | 07:23 | |
*** gtema has joined #openstack-sdks | 07:24 | |
*** tssurya has joined #openstack-sdks | 07:29 | |
*** dayou has joined #openstack-sdks | 07:37 | |
*** jpena|off is now known as jpena | 07:46 | |
*** markvoelker has joined #openstack-sdks | 07:48 | |
*** ttsiouts has joined #openstack-sdks | 08:01 | |
*** jpich has joined #openstack-sdks | 08:02 | |
*** dtantsur|afk is now known as dtantsur | 08:02 | |
*** holser_ has joined #openstack-sdks | 08:08 | |
*** ralonsoh has joined #openstack-sdks | 08:09 | |
*** holser_ has quit IRC | 08:10 | |
*** holser_ has joined #openstack-sdks | 08:11 | |
*** ttsiouts has quit IRC | 08:19 | |
*** ttsiouts has joined #openstack-sdks | 08:20 | |
*** markvoelker has quit IRC | 08:22 | |
*** ttsiouts has quit IRC | 08:24 | |
*** dayou has quit IRC | 08:28 | |
*** ttsiouts has joined #openstack-sdks | 08:33 | |
*** dayou has joined #openstack-sdks | 08:41 | |
*** cdent has joined #openstack-sdks | 08:42 | |
*** cdent has quit IRC | 09:00 | |
*** ttsiouts has quit IRC | 09:06 | |
*** ttsiouts has joined #openstack-sdks | 09:06 | |
*** ttsiouts has quit IRC | 09:11 | |
*** dayou has quit IRC | 09:18 | |
*** ttsiouts has joined #openstack-sdks | 09:18 | |
*** markvoelker has joined #openstack-sdks | 09:19 | |
*** tobberydberg has quit IRC | 09:22 | |
openstackgerrit | Artem Goncharov proposed openstack/openstacksdk master: Use resource layer for compute flavors https://review.opendev.org/650903 | 09:29 |
---|---|---|
*** tobberydberg has joined #openstack-sdks | 09:31 | |
*** dayou has joined #openstack-sdks | 09:31 | |
openstackgerrit | Artem Goncharov proposed openstack/openstacksdk master: Use Resource layer for network SecurityGroups https://review.opendev.org/662724 | 09:35 |
*** cdent has joined #openstack-sdks | 09:36 | |
*** gtema has quit IRC | 09:47 | |
*** slaweq has joined #openstack-sdks | 09:47 | |
*** markvoelker has quit IRC | 09:52 | |
*** gtema has joined #openstack-sdks | 09:58 | |
*** gtema has quit IRC | 10:28 | |
*** ttsiouts has quit IRC | 10:28 | |
*** gtema has joined #openstack-sdks | 10:28 | |
*** ttsiouts has joined #openstack-sdks | 10:29 | |
*** slaweq has quit IRC | 10:31 | |
*** ttsiouts has quit IRC | 10:33 | |
*** slaweq has joined #openstack-sdks | 10:39 | |
*** markvoelker has joined #openstack-sdks | 10:49 | |
*** slaweq has quit IRC | 10:59 | |
*** markvoelker has quit IRC | 11:21 | |
*** dave-mccowan has joined #openstack-sdks | 11:23 | |
mordred | gtema: morning! we ran in to https://storyboard.openstack.org/#!/story/2005851 with nodepool and had to pin to a previous version | 11:27 |
gtema | morning mordred | 11:27 |
mordred | ah - I see you commented on it ... yeah, that header is present | 11:27 |
gtema | Is it possible to see a real query going there? | 11:27 |
mordred | I'm working on running some ... yeah - one sec | 11:27 |
mordred | http://paste.openstack.org/raw/752708/ | 11:28 |
mordred | I'm working on doing the same upload again with 0.27 to get a comparable chunk of logging | 11:28 |
gtema | hmm, looks good. Exactly | 11:28 |
mordred | because I don't see anything wrong there - yeah | 11:28 |
mordred | the awesome part is that because rax uses the image-task method, I have to upload a full actually valid image :) | 11:32 |
gtema | :D | 11:32 |
*** jpena is now known as jpena|lunch | 11:38 | |
gtema | what I see could be different - presence of "Accept: " | 11:38 |
*** ttsiouts has joined #openstack-sdks | 11:40 | |
mordred | yes. although I did try a run hacking it to not send the accept header - and that sent the same 400 | 11:43 |
gtema | really? hm | 11:44 |
gtema | that's the only thing I might think of | 11:44 |
mordred | yeah. same here | 11:45 |
gtema | btw, to which version you downgraded? | 11:51 |
mordred | gtema: 0.27.0 | 11:54 |
mordred | gtema: which is what nodepool had been running before this recent restart that picked up latest sdk | 11:54 |
gtema | ok | 11:54 |
mordred | ok - so - I have confirmed the upload works under 0.27.0 | 11:54 |
gtema | and the request looks like ...? | 11:55 |
mordred | the main difference I can see in the REST calls is that in 0.27.0 that request is not made after the task import is complete - I THINK | 11:55 |
mordred | (I really should have logged this to a file - scrollback is a bit hard to scane because of the list calls) | 11:55 |
mordred | you know what? I'm going to do it again and log to a file - then I can upload the whole file somewhere | 11:56 |
gtema | cool | 11:56 |
mordred | have I mentioned how happy I am that image uploading is so complicated? :) | 11:57 |
gtema | nope, but I totally agree with you | 11:57 |
gtema | server normalization (with respect to network addresses) is not much better | 11:58 |
mordred | yeah | 11:58 |
gtema | but btw have found why nodepool was not happy with flavors - dogpile.cache is not happy with Resource, since it is returned from a function from a generator from a .... | 11:59 |
mordred | I mean - ultimately a large percentage of the crazy logic in the shade layer is related to rackspace being weird (the one example in the other direction is how hard it is to boot a server with an ip address) | 11:59 |
mordred | AH - joy | 11:59 |
mordred | well - I think we should rework how the caching works anyway ... | 11:59 |
gtema | it's basically pickle.dumps(list(self.compute.flavors())) does not work | 11:59 |
gtema | yeah, would need to | 11:59 |
mordred | you know what - maybe I should write a quick spec with the thoughts that were in my head WRT caching and we can talk it through and come up with an actual plan | 12:00 |
gtema | btw, racks support creating server with block_device_mapping2. Currently we use os-volumes_boot if bdm_v2 is present in params | 12:01 |
gtema | for caching - cool | 12:01 |
gtema | let's do this | 12:01 |
mordred | \o/ | 12:01 |
mordred | so - I'm also thinking - the support you added for having a cloud/vendor-specific driver that overrides some of the proxies ... | 12:02 |
gtema | :D | 12:02 |
mordred | maybe it would be cleaner to extract the rackspace-specific logic we have into a rackspace driver | 12:02 |
*** gkadam has joined #openstack-sdks | 12:03 | |
gtema | the ones "originated" all OpenStack are now a separate incompatible driver ??? | 12:03 |
mordred | yeah. it's "funny" | 12:04 |
mordred | but we carry a lot of logic that's just for them | 12:04 |
gtema | but yes, we can start really packing all of that into "drivers" | 12:04 |
mordred | like - the task import stuff - it's technically in upstream glance, but it's untestable in devstack | 12:04 |
*** dave-mccowan has quit IRC | 12:05 | |
gtema | I'm back in 10-20 min | 12:06 |
gtema | am back | 12:18 |
mordred | just added the call from 0.27.0 | 12:19 |
gtema | so it's really just "Accept:" | 12:20 |
gtema | well and then the order of "path" and "value" for each item | 12:21 |
mordred | I'm thinking maybe it's something to do with call sequencing | 12:22 |
mordred | I'm going to re-run latest logging to a file | 12:23 |
gtema | if you quickly remove line 284 in image/v2/image.py (setting Accept) to be also sure | 12:23 |
mordred | yeah - I did that yesterday | 12:23 |
gtema | ok | 12:23 |
mordred | but I can do it again and do the log if we want | 12:23 |
gtema | would be nice, but if you say it didn't help - not prio | 12:24 |
gtema | let's then really compare order or calls. However unittest tests this also. And here we had no change | 12:25 |
mordred | yeah. I was pretty confident in the changes because we have this covered in unittests | 12:25 |
*** gkadam has quit IRC | 12:26 | |
*** ricolin_ has joined #openstack-sdks | 12:27 | |
*** gkadam has joined #openstack-sdks | 12:27 | |
gtema | latest trace is broken - incomplete | 12:29 |
mordred | oh yeah? poo - maybe there was a length limit here | 12:29 |
mordred | hit | 12:29 |
*** ricolin has quit IRC | 12:29 | |
*** slaweq has joined #openstack-sdks | 12:29 | |
mordred | http://paste.openstack.org/show/752725/ <-- there's a trimmed version with just the request sequence | 12:30 |
gtema | the order is same as in tests | 12:31 |
mordred | yeah | 12:32 |
mordred | running 0.31.0 now - we'll see how it goes | 12:32 |
mordred | takes about 20 minutes | 12:32 |
gtema | ok | 12:32 |
*** jpena|lunch is now known as jpena | 12:43 | |
*** zbr|ruck is now known as zbr|rover | 12:44 | |
*** slaweq has quit IRC | 12:46 | |
mordred | http://paste.openstack.org/show/752728/ | 12:48 |
mordred | there's 0.31.0 sequence - looks the same :( | 12:49 |
*** ttsiouts has quit IRC | 12:49 | |
gtema | yeah. Is it now with "Accept: " or without? | 12:49 |
*** ttsiouts has joined #openstack-sdks | 12:50 | |
mordred | with | 12:53 |
gtema | what I also see in the first trace before GET/PATCH image was first searched in the LIST. Could it "theoretically" be, that the ID changes? | 12:54 |
*** ttsiouts has quit IRC | 12:54 | |
mordred | well - but in the failing one we do a GET on the image by id | 12:59 |
gtema | yes , exactly | 13:01 |
mordred | {"op": "add", "value": "False", "path": "/xenapi_use_agent"} 0.27.0 | 13:01 |
mordred | {"op": "add", "path": "/xenapi_use_agent", "value": false} 0.31.0 | 13:02 |
mordred | we're passing false as a string in 0.27 and as a bool in 0.31 | 13:02 |
gtema | yeah, I see | 13:02 |
mordred | in the original _make_v2_image_params - we made sure to str() wrap each item if it wasn't in a specific list | 13:05 |
mordred | we have the same thing in the image proxy | 13:06 |
gtema | hmm | 13:06 |
mordred | we call it in master in _update_image_properties - but then we call self.update_image with the resulting dict - maybe that's flowing it back through the resource mapping and causing the False to get boolean'd | 13:07 |
mordred | that doesn't make any sense though - xenapi_use_agent isn't a known property - resource shouldn't be transforming its data type | 13:08 |
gtema | you know everything what's running in the background of all the methods ;-)? | 13:09 |
gtema | should we then force all the props before the line 277 (v2/_proxy) to update_image to be strings? | 13:12 |
gtema | or probably better in v2/image/_prepare_request (if patch ...) | 13:12 |
gtema | who is setting xenapi_ise_agent? | 13:13 |
gtema | nodepool? | 13:13 |
openstackgerrit | Monty Taylor proposed openstack/openstacksdk master: Filter properties through make_v2_image_params https://review.opendev.org/664582 | 13:15 |
mordred | gtema: I *think* that ^^ should do the trick (looking at shade vs. current code, we're missing that call in that location) | 13:15 |
mordred | gtema: but - the things you were saying are likely a *better* approach | 13:16 |
mordred | gtema: xenapi_use_agent is actually set in the vendor profile of rackspace | 13:16 |
gtema | yes, and I remember explicitely skipping it and relying to the general "patch" in the resource | 13:16 |
mordred | oh. you know - it's set as boolean in the vendor file | 13:17 |
mordred | maybe let's try just updating that to "False" | 13:17 |
gtema | that's what I also mean. I think it will help either | 13:17 |
mordred | I'm going to try patching that (the vendor profile) and trying another upload | 13:17 |
gtema | and probably it is a better place to fix. Normal patch is just comparing two things and generates a diff out of it. | 13:18 |
mordred | yah | 13:18 |
*** markvoelker has joined #openstack-sdks | 13:18 | |
openstackgerrit | Monty Taylor proposed openstack/openstacksdk master: Set xenapi_use_agent to "False" instead of false https://review.opendev.org/664585 | 13:20 |
*** ttsiouts has joined #openstack-sdks | 13:22 | |
openstackgerrit | Monty Taylor proposed openstack/openstacksdk master: Set xenapi_use_agent to "False" instead of false https://review.opendev.org/664585 | 13:22 |
*** markvoelker has quit IRC | 13:23 | |
mordred | also - how is this just a raw 400 error | 13:23 |
gtema | LOL | 13:23 |
gtema | it's Glance | 13:23 |
mordred | good point | 13:23 |
gtema | mordred: http://paste.openstack.org/show/752742/ - a current diff for using resource in cloud.server | 13:31 |
gtema | what do you think about it? | 13:31 |
gtema | btw, if vendor fix works - nodepool should also get "aka" change included, since it will fix image checksum verification | 13:36 |
mordred | ++ | 13:36 |
mordred | I think that's looking good. it reminds me - I think as a followup, we should start using Flavor and SecurityGroup and Image resource objects in server.flavor, server.security_groups and server.image - and probably same for volume | 13:38 |
mordred | might be nicer than just a munch | 13:38 |
gtema | yeah, but be aware of caching - it does not support Resource objects properly as of now | 13:38 |
mordred | oh yeah - definitely a "for later" sort of thing | 13:39 |
gtema | yupp | 13:39 |
gtema | but still here for the server - I need to do a "dummy" normalization to fix image and some other stuff | 13:39 |
mordred | YES - the "False" patch fixed it | 13:40 |
gtema | that's great | 13:40 |
mordred | it is. | 13:40 |
mordred | it's absurd | 13:40 |
openstackgerrit | Artem Goncharov proposed openstack/openstacksdk master: WIP Use resource layer for compute.server cloud methods https://review.opendev.org/664593 | 13:40 |
mordred | but it's great | 13:40 |
gtema | sure. That's why in SDK we try to fix things, so that end-user stuff should not cope with those things | 13:41 |
mordred | ++ | 13:41 |
*** gkadam has quit IRC | 13:41 | |
gtema | the patch above - it shows current _normalize_server to make it "more_or_less" comparable with current behavior | 13:42 |
*** gkadam has joined #openstack-sdks | 13:42 | |
mordred | Shrews, dtantsur: if you have a sec, would you look at https://review.opendev.org/#/c/663846/ - we need to cut a point release with the rackspace fix and it would be nice to get the aka fix in to fix checksumming too | 13:42 |
dtantsur | will try to, a bit busy today though | 13:43 |
gtema | dtantsur: those a "one-liners" ;-) | 13:43 |
gtema | hehe, almost | 13:43 |
Shrews | mordred: which of those fixes is the rackspace fix? | 13:45 |
gtema | https://review.opendev.org/664593 | 13:45 |
gtema | nope - https://review.opendev.org/#/c/664585 | 13:46 |
mordred | yeah. 664585 is the one | 13:46 |
mordred | Shrews: you're really going to enjoy it | 13:46 |
Shrews | all of those "While we are here" things would be easier to review as separate reviews | 13:48 |
* Shrews woke up grumpy. apologies | 13:49 | |
gtema | sure, the thing is that exactly this fix found the issue | 13:49 |
Shrews | access_ipv4 = resource.Body('accessIPv4', aka='accessIPv4') | 13:51 |
Shrews | why is that aka necessary? | 13:51 |
gtema | that'S a wrong patch you look at. Here we want to return Resources in the cloud layer. However currently | 13:51 |
gtema | the cloud layer for servers return things with "bad names" | 13:52 |
gtema | and not to break compatibility for current users we need to expose attributes under old names | 13:52 |
*** markvoelker has joined #openstack-sdks | 13:53 | |
gtema | so resource['accessIPv4'] returns something reasonable | 13:53 |
gtema | Shrews: the most interesting part of the story here is currently exposed attribute 'adminPass', which we do not want to see in SDK as regular attribute | 13:54 |
*** slaweq has joined #openstack-sdks | 13:56 | |
*** jpena is now known as jpena|afk | 14:14 | |
*** slaweq has quit IRC | 14:28 | |
*** dave-mccowan has joined #openstack-sdks | 14:29 | |
Shrews | mordred: i think i groked enough of 846 to vote on it | 14:41 |
*** jpena|afk is now known as jpena | 14:51 | |
*** ttsiouts has quit IRC | 14:57 | |
*** ttsiouts has joined #openstack-sdks | 14:58 | |
*** ttsiouts_ has joined #openstack-sdks | 15:00 | |
*** ttsiouts has quit IRC | 15:01 | |
*** slaweq has joined #openstack-sdks | 15:07 | |
*** Luzi has quit IRC | 15:18 | |
*** obre has joined #openstack-sdks | 15:20 | |
obre | Are the python-sdk compatible with multiple domains in keystonev3? I am struggeling to use the sdk to retrieve users. | 15:21 |
*** gkadam has quit IRC | 15:22 | |
*** gkadam has joined #openstack-sdks | 15:22 | |
obre | If I use an object returned from "openstack.connect" (an openstack.connection.Connection) called c i can get a user where I know the ID with "c.identity.find_user(userid)", but I cannot retrieve a user where I just know the username. | 15:23 |
obre | How are we supposed to search for a user using the name? | 15:23 |
obre | "c.identity.find_user(username, domain_id = domain.id)" does not help me either. | 15:24 |
obre | I simply get a None returned. | 15:25 |
obre | Retrieving users from the default-domain works though. | 15:25 |
mordred | obre: it should be compatible with multiple domains, althoguh I haven't done a lot of using that myself. perhaps mnaser or cmurphy knows more | 15:30 |
mnaser | obre: did you enable logging to see what requests are happening? | 15:31 |
gtema | I was experiencing nice nasty issue, that you need to modify your connection to get domain_scoped token | 15:32 |
gtema | and basically there is no easy way to establish connection and state which scope you want to connect to | 15:33 |
gtema | This leads to need of having multiple connection with/without user_project_name/id and selecting appropriate | 15:33 |
*** e0ne has quit IRC | 15:36 | |
*** gkadam has quit IRC | 15:53 | |
*** gkadam has joined #openstack-sdks | 15:53 | |
*** ttsiouts_ has quit IRC | 16:04 | |
*** ttsiouts has joined #openstack-sdks | 16:05 | |
openstackgerrit | Artem Goncharov proposed openstack/openstacksdk master: WIP Use resource layer for compute.server cloud methods https://review.opendev.org/664593 | 16:06 |
*** cdent has quit IRC | 16:06 | |
openstackgerrit | Artem Goncharov proposed openstack/openstacksdk master: Use resource layer for compute flavors https://review.opendev.org/650903 | 16:09 |
*** ttsiouts has quit IRC | 16:10 | |
*** gtema has quit IRC | 16:22 | |
*** jpich has quit IRC | 16:33 | |
*** whoami-rajat has quit IRC | 16:38 | |
*** slaweq has quit IRC | 16:49 | |
*** dtantsur is now known as dtantsur|afk | 16:51 | |
*** slaweq has joined #openstack-sdks | 16:52 | |
openstackgerrit | Merged openstack/openstacksdk master: Set xenapi_use_agent to "False" instead of false https://review.opendev.org/664585 | 16:52 |
*** markvoelker has quit IRC | 16:53 | |
*** slaweq has quit IRC | 16:56 | |
*** gtema has joined #openstack-sdks | 17:01 | |
*** tssurya has quit IRC | 17:04 | |
*** whoami-rajat has joined #openstack-sdks | 17:05 | |
openstackgerrit | Merged openstack/openstacksdk master: Add access alias (aka) for the resource attributes https://review.opendev.org/663846 | 17:06 |
*** jpena is now known as jpena|off | 17:17 | |
*** dtruong has quit IRC | 17:24 | |
*** tosky has quit IRC | 17:30 | |
*** dtruong has joined #openstack-sdks | 17:50 | |
*** ralonsoh has quit IRC | 17:53 | |
*** holser_ has quit IRC | 17:55 | |
*** gtema has quit IRC | 18:38 | |
*** ricolin_ has quit IRC | 18:38 | |
*** markvoelker has joined #openstack-sdks | 18:55 | |
*** dtruong has quit IRC | 18:58 | |
*** dtruong has joined #openstack-sdks | 18:59 | |
mordred | remote: https://review.opendev.org/664671 Release 0.31.1 of openstacksdk | 19:02 |
*** holser_ has joined #openstack-sdks | 19:05 | |
*** markvoelker has quit IRC | 19:29 | |
*** holser_ has quit IRC | 19:34 | |
*** efried has quit IRC | 20:01 | |
*** gkadam has quit IRC | 20:04 | |
*** gkadam has joined #openstack-sdks | 20:05 | |
*** efried has joined #openstack-sdks | 20:10 | |
*** markvoelker has joined #openstack-sdks | 20:26 | |
efried | mordred: argh, I just saw that ^, *just* pushed a change to use 0.31.0. What was wrong with .0? | 20:26 |
efried | anything I'm going to care about? | 20:26 |
efried | mordred: Also, in case you care, I figured out why I had to bump the minimum for os-service-types to fix the lower-constraints job in nova for the "placement uses sdk" patch. If you care, read on: | 20:30 |
efried | We were previously requiring a minimum ost from before placement extraction, so placement's "project" was still "nova", so we were looking for placement's adapter creds in the [nova] section rather than the [placement] section, but because we were only at 0.30.0 we weren't raising an error at that point, just using defaults. | 20:30 |
mordred | efried: nothing you're goign to care about - it's a Rackspace public cloud profile issue | 20:38 |
efried | cool | 20:38 |
mordred | efried: ah - makes sense re: ost | 20:38 |
*** markvoelker has quit IRC | 20:59 | |
efried | mordred: incidentally, it looks like everything related to clouds.yaml-from-nova is going to get punted for a while. | 21:00 |
mordred | efried: ok. | 21:10 |
*** mriedem has joined #openstack-sdks | 21:54 | |
mriedem | dtroyer: mordred: can one of you abandon this now? https://review.opendev.org/#/c/460059/ | 21:54 |
mriedem | and https://review.opendev.org/#/c/627801/ | 21:55 |
mriedem | and https://review.opendev.org/#/c/589012/ | 21:55 |
mriedem | those are all related to the same thing that i fixed already https://review.opendev.org/#/c/659382/ | 21:55 |
*** markvoelker has joined #openstack-sdks | 21:56 | |
dtroyer | mriedem: yes, I was planning to do that, just haven't gotten far enough down on the list | 21:57 |
mriedem | ack | 22:00 |
*** holser_ has joined #openstack-sdks | 22:14 | |
*** slaweq has joined #openstack-sdks | 22:22 | |
*** markvoelker has quit IRC | 22:30 | |
*** slaweq has quit IRC | 22:30 | |
*** holser_ has quit IRC | 22:37 | |
*** whoami-rajat has quit IRC | 22:55 | |
*** mriedem has quit IRC | 23:06 | |
*** markvoelker has joined #openstack-sdks | 23:26 |
Generated by irclog2html.py 2.15.3 by Marius Gedminas - find it at mg.pov.lt!