Skip to content
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

Create a spring starter to provide bootstrapping required for a spring boot project. #167

Closed
praveenpg opened this issue Sep 6, 2022 · 19 comments

Comments

@praveenpg
Copy link
Contributor

praveenpg commented Sep 6, 2022

Describe the feature request

I want unleash-client-java to provide me a spring boot starter which will create a Unleash instance with a few configurations. I already have a github project which does this. The repo url is https://github.com/praveenpg/unleash-starter. Would this be something the maintainers of this project would be interested in absorbing into this java sdk project?

Background

No response

Solution suggestions

I already have a github project which does this. The repo url is https://github.com/praveenpg/unleash-starter. Would this be something the maintainers of this project would be interested in absorbing into this java sdk project?
Maven central: https://repo1.maven.org/maven2/net/leodb/unleash/

@thomasheartman thomasheartman moved this from New to In Progress in Issues and PRs Sep 7, 2022
@thomasheartman
Copy link
Contributor

Hey, @praveenpg 👋 Thanks for opening the issue 😄

Great work on the starter! I don't write much Java myself, but the readme looks complete enough that even I would be able to make it work 🙌

In regards to absorbing the starter into this package: The Java client has been written specifically to have a small amount of dependencies, so I don't think we want to absorb into the client. However, we might have some other suggestions if they suit you:

  • We might be willing to adopt the project and put it under the official Unleash umbrella if you're willing to remain on as the maintainer?
  • Otherwise, we'd also be happy to point to the starter in the Java readme, if that's better?

What do you think? ☺

And also, out of my own curiosity: could you tell me how you're using this? Is it for your own sake? Is it for a company? Why do you want the SDK to provide the starter?

@praveenpg
Copy link
Contributor Author

Thank you @thomasheartman ,
I will be using the starter extensively for my work and hence open to maintaining it.

The requirement came as I was evaluating FF4J and Unleash (work related) for feature toggling for our spring boot micro-services. FF4J has good Spring integration while I found this lacking in unleash even though purely from a feature toggle point of view, I prefer Unleash. I feel providing a spring boot starter is the best and the most friction-less way of adapting a library into a spring boot project. This was the main reasoning behind creating this project. I also think this would be useful for others looking to integrate unleash into their spring boot projects.

@checketts
Copy link
Contributor

checketts commented Sep 8, 2022

I really like the starter. Well done! I think pulling it under the Unleash org would be nice. I haven't reviewed it fully yet, particularly around the UnleashContext. Perhaps a Spring-like UnleashContextCustomizer bean that lets us add auth/user details is needed. But otherwise, I really like it. (I would be happy to make a PR in the future if needed)

@praveenpg
Copy link
Contributor Author

@checketts Thank you for the feedback.
"I would be happy to make a PR in the future if needed" - That would be really great. Thank you once again and appreciate any feedback

@praveenpg
Copy link
Contributor Author

@thomasheartman Let me know how I should proceed with this.

@thomasheartman
Copy link
Contributor

@praveenpg Thanks for picking back up on this! For sure; I'll make sure we figure out a way forward and let you know about it! That said, this week is the company offsite, so I can't promise that we'll get around to it until some time next week, I'm afraid 💁🏼

@praveenpg
Copy link
Contributor Author

@thomasheartman No problems. Thanks for getting back.

@thomasheartman
Copy link
Contributor

Hey, @praveenpg 👋🏼 Thanks for waiting! We've discussed this internally, and we would be very happy to move the spring boot starter into the official Unleash repo as long as you're open to maintaining it 🥳 If that's alright with you, you can go ahead and transfer the ownership to Unleash and I think we'll take care of the rest. Does that sound alright?

@praveenpg
Copy link
Contributor Author

@thomasheartman Thanks for getting back to me. Sorry, was on a short vacation. I am open to maintaining the library and keeping it up to date with the latest spring boot version. I will transfer the ownership in a day or 2.

@praveenpg
Copy link
Contributor Author

I don't think I have the permission to transfer ownership. I get the following error.
You don’t have the permission to create public repositories on Unleash

@thomasheartman
Copy link
Contributor

Thanks for letting me know! I haven't done it before, but I know @ivarconr has experience with it, so maybe he can provide some input here 😇

@thomasheartman
Copy link
Contributor

@praveenpg I got some more input on this! Apparently, the way to go is for you to transfer the ownership to one of us, and then we transfer the ownership to Unleash. It's a little roundabout, but it's what GitHub gives us 🤷🏼 Would you mind transferring the ownership to me and I'll move it over to Unleash?

@praveenpg
Copy link
Contributor Author

@thomasheartman Sure. I will do it over the weekend

@praveenpg
Copy link
Contributor Author

@thomasheartman I have initiated the transfer.

@thomasheartman
Copy link
Contributor

@praveenpg Thank you! 😄
I've finalized it, so it's now live at https://github.com/Unleash/unleash-starter.

We might want to rename the repo to indicate that it's a Spring Boot starter, but it should redirect there when we do.

With that, I'll close this issue if you don't mind? ☺️

Repository owner moved this from In Progress to Done in Issues and PRs Oct 11, 2022
@praveenpg
Copy link
Contributor Author

@thomasheartman The groupId many also need to be changed.

@thomasheartman
Copy link
Contributor

@praveenpg Oh, interesting. I don't know much about Java myself, so I'm not sure how. Would you mind figuring it out and updating it? I think you should have the required permissions already. If not, just let me know 😄

@thomasheartman
Copy link
Contributor

@praveenpg Just one further update: I renamed the repo (https://github.com/Unleash/unleash-spring-boot-starter/), renamed the "master" branch to "main", and added a PR for you to have a look at to get things going and help us keep track of things 🎉

@praveenpg
Copy link
Contributor Author

praveenpg commented Oct 15, 2022 via email

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
Archived in project
Development

No branches or pull requests

3 participants