Welcome to the Inedo Forums! Check out the Forums Guide for help getting started.
If you are experiencing any issues with the forum software, please visit the Contact Form on our website and let us know!
Implementing custom user directory
-
Hi, I am exploring ProGet extension development and came across github repo (https://github.com/Inedo/SampleProGetExtension/blob/master/SampleProGetExtension/UserDirectories/SampleUserDirectory.cs), where it shows an example of Sample user directory. I tried to install to a ProGet instance running in docker. I can see the extension upack has been extract to /tmp/Inedo/ExtensionCache folder but seems product is not loading the extension.
Is there a documetion on how to manually install extension in Linux or docker environments?
Secondly is there an example of implementing custom user directory using new Inedo.SDK package?
-
Hi @testintergraph_2317 ,
I'm afraid that sample code is ancient and won't work in any modern version of ProGet...
Can you let me know how you found that repository? I've just now archived the repository.
Can you share the use case for implementing a custom directory? This is very rare requirement...
In any case, you can look at the user directories we implement here: https://github.com/Inedo/inedox-inedocore/tree/master/InedoCore/InedoExtension/UserDirectories
Cheers,
Steve
-
Thanks for your response.
We want to use OpenLDAP for authentication with ProGet, I tried to use built LDAP directory but were unable to use it, then I came across below forum post where it was mentioned that current LDAP implementation works with only Windows LDAP/AD services.
Configure LDAP on BuildMaster on Linux | Inedo Community Forums
So we wanted to see if we can implement a simple custom user directory to support our workflow.
Can you please also share any documentation on how to manual extension install in ProGet docker environments?
-
We haven't specifically tested w/ OpenLDAP (I think), but the integration does work with other providers. One compatibility issue seems to that
sAMAccountName
isn't the Username property on all LDAP servers.However, in v4 of the LDAP provider, you can now customize these queries. Have you tried this yet? https://docs.inedo.com/docs/en/various-ldap-v4-advanced
In any case, we'd be happy to work with you on getting OpenLDAP working. Just let us know what specific issues you're having, and we can patching, etc.
Of course, you're welcome to try modifying the code yourself... and if you want to try I would start by forking the InedoCore extension and then using a custom build of that (just use a version number higher than published). Make sure to delete that custom version once we accept pullrequest or publish version with identical changes.
If you want a totally custom extension, just make one witha different name.
We don't have instructions for custom extensions with Docker, but it follows the same process as Windows (just restart container instead of AppPool/Service): https://docs.inedo.com/docs/proget-administration-extensions#manual-installation
Cheers,
Steve
-
Thank you I will try this and will reach out if I have any issues.
-
Hi @stevedennis, I have upgraded my test inedo proget docker version to 2022.22 (Build 4) and it has got Inedo core extension version 2.2.0. But I don't see LDAP user directory version 4?
As per the documentation AD v4 user directory should be available in this versions, but for reason I don't see it being listed. Is there anything special I need to do to add enable this user directory?
For me only below are listed:
ProGet and Inedo.Core extension versions:
Can you please let me know if I am missing something?
-
It looks like there was a hiccup in the release of the updated InedoCore extension. You should now see the ability to upgrade to the InedoCore v2.2.1 version. That includes AD v4. Sorry about the confusion there.
Thanks,
Rich