-
Notifications
You must be signed in to change notification settings - Fork 706
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
Provide Spring Cloud version via some utility method #421
Comments
I would even go so far as to add to this the ability for |
In that case, can spring boot version also be included in |
As nice as it would be, I don't think that capability is a |
It would be nice to, temporarily at least, ignore this comment as we're having a similar conversation in Spring Boot. |
I am still not sure I understand the use case for the application to know about what version of Boot or Cloud that is being used. |
Mostly for compliance/auditing/monitoring reasons. Organizations have tools internally (Spring Boot Admin console, etc) which can audit applications to make sure they are running with certain versions of things. It would be nice to be able to audit a running application to gather this information without having to trace it back to a build version, then back to Artifactory and looking at the pom to find out. |
Can't you use the |
Yes we could but then we'd have to do that in all 1,000+ applications within our organization. If the spring-boot gradle plugin did it then that would solve it as well. Otherwise we'd have to build our own "wrapper" Gradle plugin that did it. |
That feature is obviously supported in Gradle as well. As for configuring your 1000+ projects, I'd argue it is a separate problem. And I am not against adding |
Yes the feature is supported in Gradle and organizations could certainly do something on their own to use that. Personally within my organization we already have a wrapper plugin where we could do this pretty easily for all applications that use our wrapper plugin. Our internal framework starters control the I'm sure not all organizations have that luxury though. It would be nice though to be able to get something "out-of-the-box" where its just "there". Maybe exposing a |
I would also think it would be possible to scan you source control org and find the projects that are using an older boot or cloud version |
Yes we could, but source control has more things than are currently running in production (different problem I know). But it would be nice to be able to look at what is actually running in production/qa/dev/etc in real time. |
FYI, we have decided not the expose the Spring Boot version via the |
Ok, if it poses security threats to have version in |
I've not looked at it, but the implementation might be tricky since the release train is defined somewhere else (spring-cloud-release). |
After a bit of interest because of #489 I still don't know how to do this. The release train (Finchley.X, Greenwich.X, etc...) is only defined in a BOM (Bill of Materials) and that is in a separate project. Individual projects (like this one) don't know what release train they are in. Indeed a particular version may be in multiple trains if there were no changes (Finchley.RELEASE and Finchley.SR1). |
Can you add version information to spring-cloud-commons in a similar SpringBootVersion.getVersion() way when it is released? |
At build time of |
We have no knowledge of the release train at build time and as I said before, one version can belong to multiple trains, so that won't work |
We now have a webservice that can be called that can give you the compatible spring cloud release train. I'll let @ryanjbaxter put a url to that. If we were to do this, it would be during the release of the release train. Snapshots would not have this information. Also, if a user overrides the version of spring cloud commons, it would report a different release train than what is in use. |
More information on the API can be found here Note this is very early stages, so I fully expect everything about the above service to change, but the intention is to alleviate these type of questions so any feedback is welcome. I also just realized that the version returned by the above API may not be what is used by the app. The API above will always return the latest compatible Spring Cloud release for the given Boot version, however your app might be using a prior release so it may not be exactly what you are looking for. |
As per gitter communication, please provide some utility method (something similar to
SpringBootVersion.getVersion()
) to provide the version of Spring Cloud used by the target application. This information can be used by the client applications to visualize their application's cloud version.P.S: it would be nice to include the stability of cloud version like, example:
Finchley.RELEASE
,Finchley.SR1
.The text was updated successfully, but these errors were encountered: