-
Notifications
You must be signed in to change notification settings - Fork 1
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
WIP: Rewrite the CoffeeNet integration code for Spring Boot 2.x #67
base: master
Are you sure you want to change the base?
Commits on Feb 16, 2020
-
Configuration menu - View commit details
-
Copy full SHA for d690c87 - Browse repository at this point
Copy the full SHA d690c87View commit details -
Configuration menu - View commit details
-
Copy full SHA for 97e868b - Browse repository at this point
Copy the full SHA 97e868bView commit details -
Add legacy versions of the dependency management POMs
The Spring Boot 2.x migration will be a rewrite, so we will keep the previous code next to the new version while migrating. Since this will need a different set of Maven dependencies, the complete management POMs will be replicated into a `legacy/` subfolder.
Configuration menu - View commit details
-
Copy full SHA for b88fc96 - Browse repository at this point
Copy the full SHA b88fc96View commit details -
Configuration menu - View commit details
-
Copy full SHA for 693f251 - Browse repository at this point
Copy the full SHA 693f251View commit details -
Add '.legacy' package namespace
To not collide accidentally while refactoring, the complete autoconfigure and actuator code in the `legacy/` folder has now a `.legacy` inserted into the package hierarchy.
Configuration menu - View commit details
-
Copy full SHA for 34a142b - Browse repository at this point
Copy the full SHA 34a142bView commit details -
Configuration menu - View commit details
-
Copy full SHA for 35211de - Browse repository at this point
Copy the full SHA 35211deView commit details -
Configuration menu - View commit details
-
Copy full SHA for 5e5c0ef - Browse repository at this point
Copy the full SHA 5e5c0efView commit details -
Configuration menu - View commit details
-
Copy full SHA for 729e85c - Browse repository at this point
Copy the full SHA 729e85cView commit details -
Configuration menu - View commit details
-
Copy full SHA for 5f9a555 - Browse repository at this point
Copy the full SHA 5f9a555View commit details -
Update CoffeeNet version to next release 2.0.0-SNAPSHOT
The next release will be a REAL major version. This change was brought to you by: ``` $ ./mvnw versions:set -DnewVersion=2.0.0-SNAPSHOT -DprocessAllModules=true ```
Configuration menu - View commit details
-
Copy full SHA for 2f0a048 - Browse repository at this point
Copy the full SHA 2f0a048View commit details
Commits on Feb 17, 2020
-
Configuration menu - View commit details
-
Copy full SHA for 86b939e - Browse repository at this point
Copy the full SHA 86b939eView commit details
Commits on Feb 20, 2020
-
Add abstraction for a CoffeeNet view model
Multiple parts of CoffeeNet contribute UI/UX components to the final application. This abstraction allows to write these in a technology-agnostic way.
Configuration menu - View commit details
-
Copy full SHA for 332117b - Browse repository at this point
Copy the full SHA 332117bView commit details
Commits on Feb 22, 2020
-
Configuration menu - View commit details
-
Copy full SHA for 0bde7d6 - Browse repository at this point
Copy the full SHA 0bde7d6View commit details
Commits on Feb 23, 2020
-
Configuration menu - View commit details
-
Copy full SHA for 8643961 - Browse repository at this point
Copy the full SHA 8643961View commit details -
Add ability to hook bean-defined security configurers globally
To enable more CoffeeNet autoconfiguration possibilities, we need to hook into the process of defining global `SecurityConfigurer` beans, that are applied to instances of `WebSecurityConfigurerAdapter`.
Configuration menu - View commit details
-
Copy full SHA for e80361a - Browse repository at this point
Copy the full SHA e80361aView commit details -
Auto-enable OAuth2 security if clients are configured
This makes use of the feature from the previous commit, to automatically configure features on instances of `WebSecurityConfigurerAdapter`, if certain conditions are met. In this case, we auto-enable OAuth2.
Configuration menu - View commit details
-
Copy full SHA for 8a03c02 - Browse repository at this point
Copy the full SHA 8a03c02View commit details -
Configuration menu - View commit details
-
Copy full SHA for 41f5f8f - Browse repository at this point
Copy the full SHA 41f5f8fView commit details -
Configuration menu - View commit details
-
Copy full SHA for d0981ca - Browse repository at this point
Copy the full SHA d0981caView commit details -
Configuration menu - View commit details
-
Copy full SHA for bb1d211 - Browse repository at this point
Copy the full SHA bb1d211View commit details -
Configuration menu - View commit details
-
Copy full SHA for a8e7d6a - Browse repository at this point
Copy the full SHA a8e7d6aView commit details -
Configuration menu - View commit details
-
Copy full SHA for 80f1d24 - Browse repository at this point
Copy the full SHA 80f1d24View commit details -
Move CoffeeNetSecurityAutoConfiguration to .servlet
Mirroring `SecurityAutoConfiguration` from Spring Boot, this class will be used only for servlet based environments. We will later add a reactive variant.
Configuration menu - View commit details
-
Copy full SHA for 16f3f88 - Browse repository at this point
Copy the full SHA 16f3f88View commit details -
Add argument resolver infrastructure for CoffeeNetProfile
In the previous CoffeeNet iteration a profile for the currently logged in user could be retrieved via an exposed service. Most of the time this feature is needed for frontend work. Therefore we implement this reworked implementation via the Spring mechanism of a `HandlerMethodArgumentResolver`. This commit adds the needed auto-configuration as also an implementation for OAuth2/OIDC.
Configuration menu - View commit details
-
Copy full SHA for 2dee569 - Browse repository at this point
Copy the full SHA 2dee569View commit details -
Configuration menu - View commit details
-
Copy full SHA for cf3cd5e - Browse repository at this point
Copy the full SHA cf3cd5eView commit details -
Configuration menu - View commit details
-
Copy full SHA for 8576277 - Browse repository at this point
Copy the full SHA 8576277View commit details -
Configuration menu - View commit details
-
Copy full SHA for 39b154d - Browse repository at this point
Copy the full SHA 39b154dView commit details -
Configuration menu - View commit details
-
Copy full SHA for 465d05b - Browse repository at this point
Copy the full SHA 465d05bView commit details -
Fix: CoffeeNetModel Map implementation not compliant
The existing implementation was not exactly correct, having missing edge cases for equals/hashCode as also being prone to modification of the original map, when reusing the same builder.
Configuration menu - View commit details
-
Copy full SHA for 5e336a3 - Browse repository at this point
Copy the full SHA 5e336a3View commit details -
Make CoffeeNet profile auto-configuration depend on web security
Since the whole profile concept is actually tied to authenticated users and CoffeeNet is meant to be used in the web context only, we can better infer, if profile support is needed, when depending on the security filter chain.
Configuration menu - View commit details
-
Copy full SHA for 93d1f6b - Browse repository at this point
Copy the full SHA 93d1f6bView commit details -
Implement fallback profile mapper
Having a fallback implementation of profile mapper is a good idea, to make CoffeeNetProfile available, even when authentication was made by a currently not supported variant. This is especially true for the development case, where working on an application doesn't necessarily makes OAuth2 providers available.
Configuration menu - View commit details
-
Copy full SHA for 572058b - Browse repository at this point
Copy the full SHA 572058bView commit details -
Configuration menu - View commit details
-
Copy full SHA for 35d9e8d - Browse repository at this point
Copy the full SHA 35d9e8dView commit details -
Configuration menu - View commit details
-
Copy full SHA for f5a6972 - Browse repository at this point
Copy the full SHA f5a6972View commit details -
Configuration menu - View commit details
-
Copy full SHA for 1da03d9 - Browse repository at this point
Copy the full SHA 1da03d9View commit details
Commits on Mar 7, 2020
-
Merge pull request #68 from coffeenet/spring-oidc
Migrate CoffeeNet Security to OIDC
Configuration menu - View commit details
-
Copy full SHA for a0032fe - Browse repository at this point
Copy the full SHA a0032feView commit details
Commits on Mar 29, 2020
-
Configuration menu - View commit details
-
Copy full SHA for 6e97cfd - Browse repository at this point
Copy the full SHA 6e97cfdView commit details
Commits on Apr 18, 2020
-
Merge remote-tracking branch 'origin/master' into spring-2-rewrite
This recreates the previous adaptions to the Maven based with the Gradle build integrated into `master` branch.
Configuration menu - View commit details
-
Copy full SHA for 98ded64 - Browse repository at this point
Copy the full SHA 98ded64View commit details -
Remove the '-legacy' postfix from the legacy modules
Since in Gradle we don't have the limition of a Maven multi module build that every project has to be a unique artifact, we can remove the `-legacy` postfix from all the projects in the `legacy/` subfolder.
Configuration menu - View commit details
-
Copy full SHA for 6f8cc80 - Browse repository at this point
Copy the full SHA 6f8cc80View commit details -
Configuration menu - View commit details
-
Copy full SHA for dce08d0 - Browse repository at this point
Copy the full SHA dce08d0View commit details -
Fix: Wrong dependencies on coffeenet-starter-discovery
While we didn't touch the previous discovery mechanism in the rewrite yet, the starter involved was using the old Dalston.SR5 release of Spring Cloud, pulling in some undesirable dependencies in the process. We simply upgrade to current Hoxton.SR3 and use the correct dependency.
Configuration menu - View commit details
-
Copy full SHA for cbbdac2 - Browse repository at this point
Copy the full SHA cbbdac2View commit details -
Configuration menu - View commit details
-
Copy full SHA for 9b6df47 - Browse repository at this point
Copy the full SHA 9b6df47View commit details
Commits on Apr 19, 2020
-
Configuration menu - View commit details
-
Copy full SHA for 453c0b7 - Browse repository at this point
Copy the full SHA 453c0b7View commit details -
[coffenet-platform-domain] Put stronger constraints on supported classes
Since the `PrincipalCoffeeNetProfileMapper` is explicitly intended to work with implementation of `java.security.Principal` we can reflect this in the method signature.
Configuration menu - View commit details
-
Copy full SHA for 478373f - Browse repository at this point
Copy the full SHA 478373fView commit details -
[coffeenet-platform-domain] Restrict visibility of internals
The `DefaultCoffeeNetProfile` is a default implementation, that cannot instantiated or subclassed and is only constructable by a builder. We move the builder to the actual `CoffeeNetProfile` interface and hide the default implementation at the package level.
Configuration menu - View commit details
-
Copy full SHA for e955131 - Browse repository at this point
Copy the full SHA e955131View commit details -
Exclude JUnit4 from test dependencies
Since we want to encourage usage of JUnit 5 all across the CoffeeNet projects, we exclude it by default from the transitive dependencies of `spring-boot-starter-test`. This way JUnit 4 annotations and classes will not be available.
Configuration menu - View commit details
-
Copy full SHA for 820265f - Browse repository at this point
Copy the full SHA 820265fView commit details -
[coffeenet-platform-domain] Add JSON serialization hints
Since we may want to serialize the domain interfaces to JSON, we should add consistent naming for the resulting JSON keys emitted.
Configuration menu - View commit details
-
Copy full SHA for 127374d - Browse repository at this point
Copy the full SHA 127374dView commit details -
Configuration menu - View commit details
-
Copy full SHA for 9b96f24 - Browse repository at this point
Copy the full SHA 9b96f24View commit details
Commits on Apr 27, 2020
-
Configuration menu - View commit details
-
Copy full SHA for 5598f3b - Browse repository at this point
Copy the full SHA 5598f3bView commit details -
Move
CoffeeNetProfileAutoConfiguration
a level upIn prepartion for WebFlux support, we move the configuration for the `CoffeeNetProfileMapper` into the parent package.
Configuration menu - View commit details
-
Copy full SHA for 9859229 - Browse repository at this point
Copy the full SHA 9859229View commit details -
Enable support for WebFlux in CoffeeNet instrumentation
This commit adds auto-configuration for WebFlux based applications in the same manner, that servlet based applications are instrumented. Specifically it adds auto-configuration for OAuth2 authentication on all WebFlux `ServerHttpSecurity` instances and the method argument resolution of `CoffeeNetProfile` for those applications.
Configuration menu - View commit details
-
Copy full SHA for f085d6c - Browse repository at this point
Copy the full SHA f085d6cView commit details -
Configuration menu - View commit details
-
Copy full SHA for 9644c25 - Browse repository at this point
Copy the full SHA 9644c25View commit details -
Configuration menu - View commit details
-
Copy full SHA for 0e9e60d - Browse repository at this point
Copy the full SHA 0e9e60dView commit details -
Configuration menu - View commit details
-
Copy full SHA for 440bd52 - Browse repository at this point
Copy the full SHA 440bd52View commit details -
Merge pull request #73 from coffeenet/spring-2-webflux
Enable support for WebFlux in CoffeeNet instrumentation
Configuration menu - View commit details
-
Copy full SHA for d2ac336 - Browse repository at this point
Copy the full SHA d2ac336View commit details
Commits on May 24, 2020
-
Publish SNAPSHOT for spring-2-rewrite to Sonatype OSS
To ease prototyping features with the rewrite we start publishing the `spring-2-rewrite` branch to Sonatype OSS snapshot repository too.
Configuration menu - View commit details
-
Copy full SHA for 72934d9 - Browse repository at this point
Copy the full SHA 72934d9View commit details -
Configuration menu - View commit details
-
Copy full SHA for a87a87e - Browse repository at this point
Copy the full SHA a87a87eView commit details
Commits on May 30, 2020
-
Configuration menu - View commit details
-
Copy full SHA for c0ac221 - Browse repository at this point
Copy the full SHA c0ac221View commit details -
[coffeenet-dependencies] Automatic starter dependencies
Instead of listing all `coffeenet-starter*` dependencies manually, we simply can add all starter artifacts by iterating over existing subprojects and adding those who match the name pattern.
Configuration menu - View commit details
-
Copy full SHA for 69fd5a1 - Browse repository at this point
Copy the full SHA 69fd5a1View commit details
Commits on Jun 7, 2020
-
We ensure in our build configuration to produce Java 8+ compatible artifacts. But Sonaqube is complaining if the Java version used for the build is 1.8, so we switch the build to actually use Java 11.
Configuration menu - View commit details
-
Copy full SHA for 3af74bc - Browse repository at this point
Copy the full SHA 3af74bcView commit details
Commits on Aug 2, 2020
-
Configuration menu - View commit details
-
Copy full SHA for ffb90bb - Browse repository at this point
Copy the full SHA ffb90bbView commit details -
Bump Spring Cloud dependency to Hoxton.SR4 last supported version
Spring Cloud Hoxton.SR5+ are now only supported on Spring Boot 2.3+.
Configuration menu - View commit details
-
Copy full SHA for f3eda4e - Browse repository at this point
Copy the full SHA f3eda4eView commit details
Commits on Jul 26, 2021
-
Configuration menu - View commit details
-
Copy full SHA for 60c3fb4 - Browse repository at this point
Copy the full SHA 60c3fb4View commit details