jkube icon indicating copy to clipboard operation
jkube copied to clipboard

fix: Make tests correctly run also on Windows

Open cdprete opened this issue 4 years ago • 24 comments

Description

The tests have been reworked, where necessary, so that they correctly run also on Windows. This PR fixes https://github.com/eclipse/jkube/issues/1338

Type of change

  • [x] Bug fix (non-breaking change which fixes an issue)
  • [ ] Feature (non-breaking change which adds functionality)
  • [ ] Breaking change (fix or feature that would cause existing functionality to change
  • [x] Chore (non-breaking change which doesn't affect codebase; test, version modification, documentation, etc.)

Checklist

  • [x] I have read the contributing guidelines
  • [x] I signed-off my commit with a user that has signed the Eclipse Contributor Agreement
  • [x] I Added CHANGELOG entry
  • [ ] I have implemented unit tests to cover my changes -> no need
  • [ ] I have updated the documentation accordingly -> no need
  • [x] No new bugs, code smells, etc. in SonarCloud report
  • [ ] I tested my code in Kubernetes -> I can't test this at the moment
  • [ ] I tested my code in OpenShift -> I can't test this

cdprete avatar Apr 03 '22 03:04 cdprete

Eclipse JKube CI Report

Started new GH workflow run for https://github.com/eclipse/jkube/pull/1416 (2022-06-19T18:36:34Z)

:gear: JKube E2E Tests (2524887194)

Test results

:heavy_check_mark: Test reports (Minikube v1.12.0-dockerfile)
[✓] DockerFileITCase - k8sBuild - k8s:build, should create image inferring contextDir from provided dockerFile configuration
[✓] ContextDirAndDockerFileITCase - k8sBuild - k8s:build, should create image for configured special dockerFile with files added from provided contextDir
[✓] ContextDirITCase - k8sBuild - k8s:build, should create image with docker file and files read from provided contextDir configuration
[✓] ContextDirAndCustomAssemblyITCase - k8sBuild - k8s:build, should create image with docker file and files read from provided contextDir configuration (within Dockerfile, files are read from configured Assembly properties)
[✓] SimpleK8sITCase - k8sBuild - k8s:build, should create image
[✓] SimpleK8sITCase - k8sResource - k8s:resource, should create manifests
[✓] SimpleK8sITCase - k8sApply - k8s:apply, should deploy pod and service
[✓] SimpleK8sITCase - k8sUndeploy - k8s:undeploy, should delete all applied resources
[✓] All tests (8) passed successfully!!!

:heavy_check_mark: Test reports (Minikube v1.12.0-other)
[✓] VertxK8sITCase - k8sBuild - k8s:build, should create image
[✓] ThorntailK8sITCase - k8sBuild - k8s:build, should create image
[✓] OpenLibertyK8sITCase - k8sBuild - k8s:build, should create image
[✓] WildflyJarK8sITCase - k8sBuild - k8s:build, should create image
[✓] VertxK8sITCase - k8sResource - k8s:resource, should create manifests
[✓] ThorntailK8sITCase - k8sResource - k8s:resource, should create manifests
[✓] OpenLibertyK8sITCase - k8sResource - k8s:resource, should create manifests
[✓] WildflyJarK8sITCase - k8sResource - k8s:resource, should create manifests
[✓] VertxK8sITCase - k8sApply - k8s:apply, should deploy pod and service
[✓] KarafK8sITCase - k8sBuild - k8s:build, should create image
[✓] VertxK8sITCase - k8sLog - k8s:log, should retrieve log
[✓] ThorntailK8sITCase - k8sApply - k8s:apply, should deploy pod and service
[✓] KarafK8sITCase - k8sResource - k8s:resource, should create manifest for Kubernetes
[✓] VertxK8sITCase - k8sUndeploy - k8s:undeploy, should delete all applied resources
[✓] ThorntailK8sITCase - k8sUndeploy - k8s:undeploy, should delete all applied resources
[✓] DslK8sGradleITCase - k8sBuild - k8sBuild, should create image
[✓] DslK8sGradleITCase - k8sResource - k8sResource, should create manifests
[✓] OpenLibertyK8sITCase - k8sApply - k8s:apply, should deploy pod and service
[✓] DslK8sGradleITCase - k8sHelm - k8sHelm, should create Helm charts
[✓] OpenLibertyK8sITCase - k8sLog - k8s:log, should retrieve log
[✓] OpenLibertyK8sITCase - k8sUndeploy - k8s:undeploy, should delete all applied resources
[✓] WildflyJarK8sITCase - k8sApply - k8s:apply, should deploy pod and service
[✓] WildflyJarK8sITCase - k8sUndeploy - k8s:undeploy, should delete all applied resources
[✓] KarafK8sITCase - K8sApply - k8s:apply, should apply manifests on k8s cluster
[✓] DslK8sGradleITCase - k8sApply - k8sApply, should deploy pod and service
[✓] DslK8sGradleITCase - k8sLog - k8sLog, should retrieve log
[✓] DslK8sGradleITCase - k8sUndeploy - k8sUndeploy, should delete all applied resources
[✓] KarafK8sITCase - k8sLog - k8s:log
[✓] KarafK8sITCase - k8sUndeploy - k8s:undeploy, should delete all applied resources
[✓] All tests (29) passed successfully!!!

:heavy_check_mark: Test reports (Minikube v1.12.0-quarkus)
[✓] QuarkusK8sITCase - k8sBuild - k8s:build, should create image
[✓] QuarkusK8sITCase - k8sResource - k8s:resource, should create manifests
[✓] QuarkusK8sITCase - k8sHelm - k8s:helm, should create Helm charts
[✓] QuarkusK8sITCase - k8sApply - k8s:apply, should deploy pod and service
[✓] QuarkusK8sITCase - k8sUndeploy - k8s:undeploy, should delete all applied resources
[✓] All tests (5) passed successfully!!!

:heavy_check_mark: Test reports (Minikube v1.12.0-quarkus-native)
[✓] QuarkusNativeK8sITCase - k8sBuild - k8s:build, should create image
[✓] QuarkusNativeK8sITCase - k8sResource - k8s:resource, should create manifests
[✓] QuarkusNativeK8sITCase - k8sApply - k8s:apply, should deploy pod and service
[✓] QuarkusNativeK8sITCase - k8sUndeploy - k8s:undeploy, should delete all applied resources
[✓] All tests (4) passed successfully!!!

:heavy_check_mark: Test reports (Minikube v1.12.0-springboot)
[✓] HelmConfigITCase - k8sResource - k8s:resource, no specified profile, should create default resource manifests
[✓] MultiProfileITCase - k8sResourceProductionProfile - k8s:resource, production profile, should create production resource manifests
[✓] ZeroConfigK8sITCase - k8sBuild - k8s:build, should create image
[✓] HelmConfigITCase - k8sHelm - k8s:helm, should create Helm charts
[✓] MultiProfileITCase - k8sResource - k8s:resource, no specified profile, should create default resource manifests
[✓] CompleteK8sJibITCase - k8sBuild - k8s:build, should create JIB image
[✓] CompleteDockerITCase - k8sBuild - k8s:build, should create image and assembly files
[✓] CompleteK8sITCase - k8sBuild - k8s:build, should create image
[✓] ZeroConfigK8sITCase - k8sPush - k8s:push, should push image to remote registry
[✓] CompleteK8sJibITCase - k8sResource - k8s:resource, should create manifests
[✓] CompleteDockerITCase - k8sResource - k8s:resource, should create manifests in specific directory
[✓] ZeroConfigK8sITCase - k8sResource - k8s:resource, should create manifests
[✓] CompleteDockerITCase - k8sApply - k8s:apply, should deploy pod and service form manifests in specific directory
[✓] CompleteK8sJibITCase - k8sPush - k8s:push, should push image to remote registry
[✓] CompleteK8sITCase - k8sResource - k8s:resource, should create manifests
[✓] ZeroConfigK8sITCase - k8sHelm - k8s:helm, should create Helm charts
[✓] CompleteDockerITCase - k8sUndeploy - k8s:undeploy, should delete all applied resources
[✓] CompleteK8sJibITCase - k8sApply - k8s:apply, should deploy pod and service
[✓] ZeroConfigK8sGradleITCase - k8sBuild - k8sBuild, should create image
[✓] CompleteK8sJibITCase - k8sUndeploy - k8s:undeploy, should delete all applied resources
[✓] ZeroConfigK8sGradleITCase - k8sResource - k8sResource, should create manifests
[✓] ZeroConfigK8sGradleITCase - k8sHelm - k8sHelm, should create Helm charts
[✓] CompleteK8sITCase - k8sApply - k8s:apply, should deploy pod and service
[✓] CompleteK8sITCase - k8sUndeploy - k8s:undeploy, should delete all applied resources
[✓] ZeroConfigK8sGradleITCase - k8sPush - k8sPush, should push image to remote registry
[✓] ZeroConfigK8sITCase - k8sApply - k8s:apply, should deploy pod and service
[✓] ZeroConfigK8sGradleITCase - k8sApply - k8sApply, should deploy pod and service
[✓] ZeroConfigK8sITCase - k8sLog - k8s:log, should retrieve log
[✓] ZeroConfigK8sGradleITCase - k8sLog - k8sLog, should retrieve log
[✓] ZeroConfigK8sGradleITCase - k8sUndeploy - k8sUndeploy, should delete all applied resources
[✓] ZeroConfigK8sITCase - k8sUndeploy - k8s:undeploy, should delete all applied resources
[✓] All tests (31) passed successfully!!!

:heavy_check_mark: Test reports (Minikube v1.12.0-webapp)
[✓] JettyK8sITCase - k8sBuild - k8s:build, should create image
[✓] ZeroConfigK8sITCase - k8sBuild - k8s:build, should create image
[✓] WildFlyK8sITCase - k8sBuild - k8s:build, should create image
[✓] JettyK8sITCase - k8sResource - k8s:resource, should create manifests
[✓] ZeroConfigK8sITCase - k8sResource - k8s:resource, should create manifests
[✓] WildFlyK8sITCase - k8sResource - k8s:resource, should create manifests
[✓] JettyK8sITCase - k8sApply - k8s:apply, should deploy pod and service
[✓] JettyK8sITCase - k8sLog - k8s:log, should retrieve log
[✓] ZeroConfigK8sITCase - k8sApply - k8s:apply, should deploy pod and service
[✓] JettyK8sITCase - k8sUndeploy - k8s:undeploy, should delete all applied resources
[✓] ZeroConfigK8sITCase - k8sLog - k8s:log, should retrieve log
[✓] ZeroConfigK8sITCase - testNodePortResponse - Service as NodePort response should return String
[✓] ZeroConfigK8sITCase - k8sUndeploy - k8s:undeploy, should delete all applied resources
[✓] WildFlyK8sITCase - k8sApply - k8s:apply, should deploy pod and service
[✓] WildFlyK8sITCase - k8sLog - k8s:log, should retrieve log
[✓] WildFlyK8sITCase - k8sUndeploy - k8s:undeploy, should delete all applied resources
[✓] All tests (16) passed successfully!!!

:heavy_check_mark: Test reports (Minikube v1.24.0-dockerfile)
[✓] DockerFileITCase - k8sBuild - k8s:build, should create image inferring contextDir from provided dockerFile configuration
[✓] ContextDirAndDockerFileITCase - k8sBuild - k8s:build, should create image for configured special dockerFile with files added from provided contextDir
[✓] ContextDirITCase - k8sBuild - k8s:build, should create image with docker file and files read from provided contextDir configuration
[✓] ContextDirAndCustomAssemblyITCase - k8sBuild - k8s:build, should create image with docker file and files read from provided contextDir configuration (within Dockerfile, files are read from configured Assembly properties)
[✓] SimpleK8sITCase - k8sBuild - k8s:build, should create image
[✓] SimpleK8sITCase - k8sResource - k8s:resource, should create manifests
[✓] SimpleK8sITCase - k8sApply - k8s:apply, should deploy pod and service
[✓] SimpleK8sITCase - k8sUndeploy - k8s:undeploy, should delete all applied resources
[✓] All tests (8) passed successfully!!!

:heavy_check_mark: Test reports (Minikube v1.24.0-other)
[✓] VertxK8sITCase - k8sBuild - k8s:build, should create image
[✓] ThorntailK8sITCase - k8sBuild - k8s:build, should create image
[✓] OpenLibertyK8sITCase - k8sBuild - k8s:build, should create image
[✓] WildflyJarK8sITCase - k8sBuild - k8s:build, should create image
[✓] VertxK8sITCase - k8sResource - k8s:resource, should create manifests
[✓] ThorntailK8sITCase - k8sResource - k8s:resource, should create manifests
[✓] OpenLibertyK8sITCase - k8sResource - k8s:resource, should create manifests
[✓] WildflyJarK8sITCase - k8sResource - k8s:resource, should create manifests
[✓] VertxK8sITCase - k8sApply - k8s:apply, should deploy pod and service
[✓] KarafK8sITCase - k8sBuild - k8s:build, should create image
[✓] VertxK8sITCase - k8sLog - k8s:log, should retrieve log
[✓] ThorntailK8sITCase - k8sApply - k8s:apply, should deploy pod and service
[✓] DslK8sGradleITCase - k8sBuild - k8sBuild, should create image
[✓] KarafK8sITCase - k8sResource - k8s:resource, should create manifest for Kubernetes
[✓] VertxK8sITCase - k8sUndeploy - k8s:undeploy, should delete all applied resources
[✓] DslK8sGradleITCase - k8sResource - k8sResource, should create manifests
[✓] DslK8sGradleITCase - k8sHelm - k8sHelm, should create Helm charts
[✓] ThorntailK8sITCase - k8sUndeploy - k8s:undeploy, should delete all applied resources
[✓] OpenLibertyK8sITCase - k8sApply - k8s:apply, should deploy pod and service
[✓] OpenLibertyK8sITCase - k8sLog - k8s:log, should retrieve log
[✓] OpenLibertyK8sITCase - k8sUndeploy - k8s:undeploy, should delete all applied resources
[✓] WildflyJarK8sITCase - k8sApply - k8s:apply, should deploy pod and service
[✓] WildflyJarK8sITCase - k8sUndeploy - k8s:undeploy, should delete all applied resources
[✓] KarafK8sITCase - K8sApply - k8s:apply, should apply manifests on k8s cluster
[✓] DslK8sGradleITCase - k8sApply - k8sApply, should deploy pod and service
[✓] DslK8sGradleITCase - k8sLog - k8sLog, should retrieve log
[✓] DslK8sGradleITCase - k8sUndeploy - k8sUndeploy, should delete all applied resources
[✓] KarafK8sITCase - k8sLog - k8s:log
[✓] KarafK8sITCase - k8sUndeploy - k8s:undeploy, should delete all applied resources
[✓] All tests (29) passed successfully!!!

:heavy_check_mark: Test reports (Minikube v1.24.0-quarkus)
[✓] QuarkusK8sITCase - k8sBuild - k8s:build, should create image
[✓] QuarkusK8sITCase - k8sResource - k8s:resource, should create manifests
[✓] QuarkusK8sITCase - k8sHelm - k8s:helm, should create Helm charts
[✓] QuarkusK8sITCase - k8sApply - k8s:apply, should deploy pod and service
[✓] QuarkusK8sITCase - k8sUndeploy - k8s:undeploy, should delete all applied resources
[✓] All tests (5) passed successfully!!!

:heavy_check_mark: Test reports (Minikube v1.24.0-quarkus-native)
[✓] QuarkusNativeK8sITCase - k8sBuild - k8s:build, should create image
[✓] QuarkusNativeK8sITCase - k8sResource - k8s:resource, should create manifests
[✓] QuarkusNativeK8sITCase - k8sApply - k8s:apply, should deploy pod and service
[✓] QuarkusNativeK8sITCase - k8sUndeploy - k8s:undeploy, should delete all applied resources
[✓] All tests (4) passed successfully!!!

:heavy_check_mark: Test reports (Minikube v1.24.0-springboot)
[✓] HelmConfigITCase - k8sResource - k8s:resource, no specified profile, should create default resource manifests
[✓] MultiProfileITCase - k8sResourceProductionProfile - k8s:resource, production profile, should create production resource manifests
[✓] CustomResourceK8sITCase - k8sBuild - k8s:build, should create image
[✓] ZeroConfigK8sITCase - k8sBuild - k8s:build, should create image
[✓] HelmConfigITCase - k8sHelm - k8s:helm, should create Helm charts
[✓] MultiProfileITCase - k8sResource - k8s:resource, no specified profile, should create default resource manifests
[✓] CompleteK8sJibITCase - k8sBuild - k8s:build, should create JIB image
[✓] CompleteK8sJibITCase - k8sResource - k8s:resource, should create manifests
[✓] CompleteK8sITCase - k8sBuild - k8s:build, should create image
[✓] ZeroConfigK8sITCase - k8sPush - k8s:push, should push image to remote registry
[✓] CustomResourceK8sITCase - k8sPush - k8s:push, should push image to remote registry
[✓] CompleteK8sJibITCase - k8sPush - k8s:push, should push image to remote registry
[✓] CompleteK8sITCase - k8sResource - k8s:resource, should create manifests
[✓] ZeroConfigK8sITCase - k8sResource - k8s:resource, should create manifests
[✓] CustomResourceK8sITCase - k8sResource - k8s:resource, should create manifests
[✓] CompleteDockerITCase - k8sBuild - k8s:build, should create image and assembly files
[✓] CompleteK8sJibITCase - k8sApply - k8s:apply, should deploy pod and service
[✓] ZeroConfigK8sITCase - k8sHelm - k8s:helm, should create Helm charts
[✓] CompleteDockerITCase - k8sResource - k8s:resource, should create manifests in specific directory
[✓] CompleteK8sJibITCase - k8sUndeploy - k8s:undeploy, should delete all applied resources
[✓] ZeroConfigK8sGradleITCase - k8sBuild - k8sBuild, should create image
[✓] CompleteK8sITCase - k8sApply - k8s:apply, should deploy pod and service
[✓] ZeroConfigK8sGradleITCase - k8sResource - k8sResource, should create manifests
[✓] ZeroConfigK8sGradleITCase - k8sHelm - k8sHelm, should create Helm charts
[✓] CompleteK8sITCase - k8sUndeploy - k8s:undeploy, should delete all applied resources
[✓] CustomResourceK8sITCase - k8sApply - k8s:apply, should deploy pod and service
[✓] ZeroConfigK8sGradleITCase - k8sPush - k8sPush, should push image to remote registry
[✓] CustomResourceK8sITCase - k8sLog - k8s:log, should retrieve log
[✓] ZeroConfigK8sITCase - k8sApply - k8s:apply, should deploy pod and service
[✓] CustomResourceK8sITCase - k8sUndeploy - k8s:undeploy, should delete all applied resources
[✓] ZeroConfigK8sITCase - k8sLog - k8s:log, should retrieve log
[✓] CompleteDockerITCase - k8sApply - k8s:apply, should deploy pod and service form manifests in specific directory
[✓] ZeroConfigK8sITCase - k8sUndeploy - k8s:undeploy, should delete all applied resources
[✓] ZeroConfigK8sGradleITCase - k8sApply - k8sApply, should deploy pod and service
[✓] CompleteDockerITCase - k8sUndeploy - k8s:undeploy, should delete all applied resources
[✓] ZeroConfigK8sGradleITCase - k8sLog - k8sLog, should retrieve log
[✓] ZeroConfigK8sGradleITCase - k8sUndeploy - k8sUndeploy, should delete all applied resources
[✓] All tests (37) passed successfully!!!

:heavy_check_mark: Test reports (Minikube v1.24.0-webapp)
[✓] JettyK8sITCase - k8sBuild - k8s:build, should create image
[✓] ZeroConfigK8sITCase - k8sBuild - k8s:build, should create image
[✓] WildFlyK8sITCase - k8sBuild - k8s:build, should create image
[✓] JettyK8sITCase - k8sResource - k8s:resource, should create manifests
[✓] ZeroConfigK8sITCase - k8sResource - k8s:resource, should create manifests
[✓] WildFlyK8sITCase - k8sResource - k8s:resource, should create manifests
[✓] JettyK8sITCase - k8sApply - k8s:apply, should deploy pod and service
[✓] JettyK8sITCase - k8sLog - k8s:log, should retrieve log
[✓] ZeroConfigK8sITCase - k8sApply - k8s:apply, should deploy pod and service
[✓] JettyK8sITCase - k8sUndeploy - k8s:undeploy, should delete all applied resources
[✓] ZeroConfigK8sITCase - k8sLog - k8s:log, should retrieve log
[✓] ZeroConfigK8sITCase - testNodePortResponse - Service as NodePort response should return String
[✓] ZeroConfigK8sITCase - k8sUndeploy - k8s:undeploy, should delete all applied resources
[✓] WildFlyK8sITCase - k8sApply - k8s:apply, should deploy pod and service
[✓] WildFlyK8sITCase - k8sLog - k8s:log, should retrieve log
[✓] WildFlyK8sITCase - k8sUndeploy - k8s:undeploy, should delete all applied resources
[✓] All tests (16) passed successfully!!!

:heavy_check_mark: Test reports (OpenShift v3.11.0-other)
[✓] KarafOcITCase - ocBuild - oc:build, should create image
[✓] ThorntailOcITCase - ocBuild - oc:build, should create image
[✓] KarafOcITCase - ocResource - oc:resource, should create resource manifests
[✓] ThorntailOcITCase - ocResource - oc:resource, should create manifests
[✓] VertxOcITCase - ocBuild - oc:build, should create image
[✓] VertxOcITCase - ocResource - oc:resource, should create manifests
[✓] WildflyJarOcITCase - ocBuild - oc:build, should create image
[✓] WildflyJarOcITCase - ocResource - oc:resource, should create manifests
[✓] OpenLibertyOcITCase - ocBuild - oc:build, should create image
[✓] OpenLibertyOcITCase - ocResource - oc:resource, should create manifests
[✓] DslOcGradleITCase - ocBuild - ocBuild, should create image
[✓] DslOcGradleITCase - ocResource - ocResource, should create manifests
[✓] KarafOcITCase - ocApply - oc:apply, should create pod, service and route
[✓] KarafOcITCase - ocLog - oc:log, should retrieve log
[✓] KarafOcITCase - ocUndeploy - oc:undeploy, should delete all applied resources
[✓] ThorntailOcITCase - ocApply - oc:apply, should deploy pod and service
[✓] ThorntailOcITCase - ocUndeploy - oc:undeploy, should delete all applied resources
[✓] VertxOcITCase - ocApply - oc:apply, should deploy pod and service
[✓] VertxOcITCase - k8sLog - oc:log, should retrieve log
[✓] VertxOcITCase - ocUndeploy - oc:undeploy, should delete all applied resources
[✓] WildflyJarOcITCase - ocApply - oc:apply, should deploy pod and service
[✓] WildflyJarOcITCase - ocUndeploy - oc:undeploy, should delete all applied resources
[✓] OpenLibertyOcITCase - ocApply - oc:apply, should deploy pod and service
[✓] OpenLibertyOcITCase - ocLog - oc:log, should retrieve log
[✓] DslOcGradleITCase - ocApply - ocApply, should deploy pod and service
[✓] OpenLibertyOcITCase - ocUndeploy - oc:undeploy, should delete all applied resources
[✓] DslOcGradleITCase - ocHelm - ocHelm, should create Helm charts
[✓] DslOcGradleITCase - ocLog - ocLog, should retrieve log
[✓] DslOcGradleITCase - ocUndeploy - ocUndeploy, should delete all applied resources
[✓] All tests (29) passed successfully!!!

:heavy_check_mark: Test reports (OpenShift v3.11.0-quarkus)
[✓] QuarkusOcITCase - ocBuild - oc:build, should create image
[✓] QuarkusOcITCase - ocResource - oc:resource, should create manifests
[✓] QuarkusOcITCase - ocHelm - oc:helm, should create Helm charts
[✓] QuarkusOcITCase - ocApply - oc:apply, should deploy pod and service
[✓] QuarkusOcITCase - ocUndeploy - oc:undeploy, should delete all applied resources
[✓] All tests (5) passed successfully!!!

:heavy_check_mark: Test reports (OpenShift v3.11.0-springboot)
[✓] MultiProfileITCase - ocResourceProductionProfile - oc:resource, production profile, should create production resource manifests
[✓] HelmConfigITCase - ocResource - oc:resource, no specified profile, should create default resource manifests
[✓] HelmConfigITCase - ocHelm - oc:helm, should create Helm charts
[✓] MultiProfileITCase - ocResource - oc:resource, no specified default profile, should create default resource manifests
[✓] ZeroConfigOcITCase - ocBuild - oc:build, should create image
[✓] ZeroConfigOcITCase - ocResource - oc:resource, should create manifests
[✓] ZeroConfigOcITCase - ocApply - oc:apply, should deploy pod and service
[✓] ZeroConfigOcITCase - ocHelm - oc:helm, should create Helm charts
[✓] ZeroConfigOcITCase - ocLog - oc:log, should retrieve log
[✓] ZeroConfigOcGradleITCase - ocBuild - ocBuild, should create image
[✓] ZeroConfigOcGradleITCase - ocResource - ocResource, should create manifests
[✓] ZeroConfigOcITCase - ocUndeploy - oc:undeploy, should delete all applied resources
[✓] ZeroConfigOcGradleITCase - ocApply - ocApply, should deploy pod and service
[✓] ZeroConfigOcGradleITCase - ocHelm - ocHelm, should create Helm charts
[✓] ZeroConfigOcGradleITCase - ocLog - ocLog, should retrieve log
[✓] ZeroConfigOcGradleITCase - ocUndeploy - ocUndeploy, should delete all applied resources
[✓] All tests (16) passed successfully!!!

:heavy_check_mark: Test reports (OpenShift v3.11.0-webapp)
[✓] JettyOcITCase - ocBuild - oc:build, should create image
[✓] JettyOcITCase - ocResource - oc:resource, should create manifests
[✓] ZeroConfigOcITCase - ocBuild - oc:build, should create image
[✓] JettyOcITCase - ocApply - oc:apply, should deploy pod and service
[✓] ZeroConfigOcITCase - ocResource - oc:resource, should create manifests
[✓] JettyOcITCase - ocLog - oc:log, should retrieve log
[✓] JettyOcITCase - ocUndeploy - oc:undeploy, should delete all applied resources
[✓] ZeroConfigOcITCase - ocApply - oc:apply, should deploy pod and service
[✓] ZeroConfigOcITCase - testNodePortResponse - Service as NodePort response should return String
[✓] WildFlyOcDockerModeITCase - ocBuild - oc:build, should create image using docker
[✓] ZeroConfigOcITCase - ocLog - oc:log, should retrieve log
[✓] WildFlyOcDockerModeITCase - ocResource - k8s:resource, should create manifests
[✓] ZeroConfigOcITCase - ocUndeploy - oc:undeploy, should delete all applied resources
[✓] WildFlyOcDockerModeITCase - ocApply - oc:apply, should deploy pod and service
[✓] WildFlyOcDockerModeITCase - ocLog - oc:log, should retrieve logs
[✓] WildFlyOcDockerModeITCase - ocUndeploy - oc:undeploy, should delete all applied resources
[✓] WildFlyOcITCase - ocBuild - oc:build, should create image
[✓] WildFlyOcITCase - ocResource - oc:resource, should create manifests
[✓] WildFlyOcITCase - ocApply - oc:apply, should deploy pod and service
[✓] WildFlyOcITCase - ocLog - oc:log, should retrieve logs
[✓] WildFlyOcITCase - ocUndeploy - oc:undeploy, should delete all applied resources
[✓] All tests (21) passed successfully!!!

:x: Test reports (OpenShift v3.9.0-other)
[✓] KarafOcITCase - ocBuild - oc:build, should create image
[✓] WildflyJarOcITCase - ocBuild - oc:build, should create image
[✓] KarafOcITCase - ocResource - oc:resource, should create resource manifests
[✓] WildflyJarOcITCase - ocResource - oc:resource, should create manifests
[✓] VertxOcITCase - ocBuild - oc:build, should create image
[✓] VertxOcITCase - ocResource - oc:resource, should create manifests
[✓] ThorntailOcITCase - ocBuild - oc:build, should create image
[✓] ThorntailOcITCase - ocResource - oc:resource, should create manifests
[✓] OpenLibertyOcITCase - ocBuild - oc:build, should create image
[✓] OpenLibertyOcITCase - ocResource - oc:resource, should create manifests
[✓] KarafOcITCase - ocApply - oc:apply, should create pod, service and route
[✓] KarafOcITCase - ocLog - oc:log, should retrieve log
[✓] KarafOcITCase - ocUndeploy - oc:undeploy, should delete all applied resources
[✓] WildflyJarOcITCase - ocApply - oc:apply, should deploy pod and service
[✓] WildflyJarOcITCase - ocUndeploy - oc:undeploy, should delete all applied resources
[✓] DslOcGradleITCase - ocBuild - ocBuild, should create image
[✓] DslOcGradleITCase - ocResource - ocResource, should create manifests
[✓] VertxOcITCase - ocApply - oc:apply, should deploy pod and service
[✓] VertxOcITCase - k8sLog - oc:log, should retrieve log
[✓] VertxOcITCase - ocUndeploy - oc:undeploy, should delete all applied resources
[✓] ThorntailOcITCase - ocApply - oc:apply, should deploy pod and service
[✓] ThorntailOcITCase - ocUndeploy - oc:undeploy, should delete all applied resources
[✓] OpenLibertyOcITCase - ocApply - oc:apply, should deploy pod and service
[✓] DslOcGradleITCase - ocApply - ocApply, should deploy pod and service
[✓] DslOcGradleITCase - ocHelm - ocHelm, should create Helm charts
[✓] DslOcGradleITCase - ocLog - ocLog, should retrieve log
[✓] DslOcGradleITCase - ocUndeploy - ocUndeploy, should delete all applied resources
[X] OpenLibertyOcITCase - ocLog - oc:log, should retrieve log
[✓] OpenLibertyOcITCase - ocUndeploy - oc:undeploy, should delete all applied resources
[X] Some tests did not pass (Failed tests 1/29)

:heavy_check_mark: Test reports (OpenShift v3.9.0-quarkus)
[✓] QuarkusOcITCase - ocBuild - oc:build, should create image
[✓] QuarkusOcITCase - ocResource - oc:resource, should create manifests
[✓] QuarkusOcITCase - ocHelm - oc:helm, should create Helm charts
[✓] QuarkusOcITCase - ocApply - oc:apply, should deploy pod and service
[✓] QuarkusOcITCase - ocUndeploy - oc:undeploy, should delete all applied resources
[✓] All tests (5) passed successfully!!!

:heavy_check_mark: Test reports (OpenShift v3.9.0-springboot)
[✓] HelmConfigITCase - ocResource - oc:resource, no specified profile, should create default resource manifests
[✓] MultiProfileITCase - ocResourceProductionProfile - oc:resource, production profile, should create production resource manifests
[✓] HelmConfigITCase - ocHelm - oc:helm, should create Helm charts
[✓] MultiProfileITCase - ocResource - oc:resource, no specified default profile, should create default resource manifests
[✓] ZeroConfigOcITCase - ocBuild - oc:build, should create image
[✓] ZeroConfigOcITCase - ocResource - oc:resource, should create manifests
[✓] ZeroConfigOcITCase - ocApply - oc:apply, should deploy pod and service
[✓] ZeroConfigOcITCase - ocHelm - oc:helm, should create Helm charts
[✓] ZeroConfigOcITCase - ocLog - oc:log, should retrieve log
[✓] ZeroConfigOcITCase - ocUndeploy - oc:undeploy, should delete all applied resources
[✓] ZeroConfigOcGradleITCase - ocBuild - ocBuild, should create image
[✓] ZeroConfigOcGradleITCase - ocResource - ocResource, should create manifests
[✓] ZeroConfigOcGradleITCase - ocApply - ocApply, should deploy pod and service
[✓] ZeroConfigOcGradleITCase - ocHelm - ocHelm, should create Helm charts
[✓] ZeroConfigOcGradleITCase - ocLog - ocLog, should retrieve log
[✓] ZeroConfigOcGradleITCase - ocUndeploy - ocUndeploy, should delete all applied resources
[✓] All tests (16) passed successfully!!!

:heavy_check_mark: Test reports (OpenShift v3.9.0-webapp)
[✓] JettyOcITCase - ocBuild - oc:build, should create image
[✓] JettyOcITCase - ocResource - oc:resource, should create manifests
[✓] ZeroConfigOcITCase - ocBuild - oc:build, should create image
[✓] JettyOcITCase - ocApply - oc:apply, should deploy pod and service
[✓] ZeroConfigOcITCase - ocResource - oc:resource, should create manifests
[✓] JettyOcITCase - ocLog - oc:log, should retrieve log
[✓] JettyOcITCase - ocUndeploy - oc:undeploy, should delete all applied resources
[✓] ZeroConfigOcITCase - ocApply - oc:apply, should deploy pod and service
[✓] ZeroConfigOcITCase - testNodePortResponse - Service as NodePort response should return String
[✓] WildFlyOcDockerModeITCase - ocBuild - oc:build, should create image using docker
[✓] ZeroConfigOcITCase - ocLog - oc:log, should retrieve log
[✓] WildFlyOcDockerModeITCase - ocResource - k8s:resource, should create manifests
[✓] ZeroConfigOcITCase - ocUndeploy - oc:undeploy, should delete all applied resources
[✓] WildFlyOcDockerModeITCase - ocApply - oc:apply, should deploy pod and service
[✓] WildFlyOcDockerModeITCase - ocLog - oc:log, should retrieve logs
[✓] WildFlyOcDockerModeITCase - ocUndeploy - oc:undeploy, should delete all applied resources
[✓] WildFlyOcITCase - ocBuild - oc:build, should create image
[✓] WildFlyOcITCase - ocResource - oc:resource, should create manifests
[✓] WildFlyOcITCase - ocApply - oc:apply, should deploy pod and service
[✓] WildFlyOcITCase - ocLog - oc:log, should retrieve logs
[✓] WildFlyOcITCase - ocUndeploy - oc:undeploy, should delete all applied resources
[✓] All tests (21) passed successfully!!!

:heavy_check_mark: Test reports (Windows)
[✓] WindowsITCase - k8sBuild - k8s:build, should create image
[✓] WindowsITCase - k8sPush - k8s:push, should push image to remote registry
[✓] WindowsITCase - k8sResource - k8s:resource, should create manifests
[✓] WindowsITCase - ocResource - oc:resource, should create manifests
[✓] WindowsITCase - k8sHelm - k8s:helm, should create Helm charts
[✓] WindowsITCase - ocHelm - oc:helm, should create Helm charts
[✓] All tests (6) passed successfully!!!

manusa avatar Apr 03 '22 03:04 manusa

Codecov Report

Merging #1416 (0849cd7) into master (2a4239e) will increase coverage by 0.00%. The diff coverage is 45.00%.

@@            Coverage Diff            @@
##             master    #1416   +/-   ##
=========================================
  Coverage     51.44%   51.45%           
  Complexity     3824     3824           
=========================================
  Files           459      459           
  Lines         20700    20706    +6     
  Branches       2816     2817    +1     
=========================================
+ Hits          10649    10654    +5     
+ Misses         8935     8934    -1     
- Partials       1116     1118    +2     
Impacted Files Coverage Δ
...se/jkube/kit/common/assertj/ArchiveAssertions.java 0.00% <0.00%> (ø)
...lipse/jkube/kit/common/assertj/FileAssertions.java 0.00% <0.00%> (ø)
...ava/org/eclipse/jkube/kit/common/util/EnvUtil.java 77.70% <50.00%> (-1.63%) :arrow_down:
...a/org/eclipse/jkube/kit/common/ResourceVerify.java 74.19% <80.00%> (+1.77%) :arrow_up:
...e/gradle/plugin/task/KubernetesConfigViewTask.java 84.00% <100.00%> (ø)

Continue to review full report at Codecov.

Legend - Click here to learn more Δ = absolute <relative> (impact), ø = not affected, ? = missing data Powered by Codecov. Last update 2a4239e...0849cd7. Read the comment docs.

codecov[bot] avatar Apr 03 '22 14:04 codecov[bot]

Refactoring the code with the Eclipse plugin for IntelliJ somehow breaks the compilation completely, since some classes can't be found anymore although they're there:

[ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.8.1:compile (default-compile) on project jkube-kit-spring-boot: Compilation failure: Compilation failure:
[ERROR] /C:/Users/Cosimo Damiano Prete/IdeaProjects/jkube/jkube-kit/jkube-kit-spring-boot/src/main/java/org/eclipse/jkube/springboot/generator/SpringBootGenerator.java:[63,40] package Configs does not exist
[ERROR] /C:/Users/Cosimo Damiano Prete/IdeaProjects/jkube/jkube-kit/jkube-kit-spring-boot/src/main/java/org/eclipse/jkube/springboot/generator/SpringBootGenerator.java:[62,4] cannot find symbol
[ERROR]   symbol:   class AllArgsConstructor
[ERROR]   location: class org.eclipse.jkube.springboot.generator.SpringBootGenerator
[ERROR] -> [Help 1]

I don't have an explanation for this yet.

cdprete avatar Apr 03 '22 14:04 cdprete

Hi @cdprete I think you did an awesome job here, but so far it's very hard for me to review. Could you please revert any formatting changes that simply add noise to this PR.

Yep, I'll try to manually revert those re-arranged sources. Your complain is absolutely right (I hate that as well when I get such changes :D)

cdprete avatar Apr 06 '22 07:04 cdprete

Hi @manusa. I've addressed everything I could from my side. What else can I do to make this PR land into master?

cdprete avatar Apr 10 '22 00:04 cdprete

I recall I fixed the jkube-kit-common module a while ago to work under windows. I just run the tests in the master branch, and they are still passing (on my machine). I wouldn't expect any changes in that module.

Same for jkube-kit-common-maven, I'd expect only the minimum changes to make the tests pass.

manusa avatar Apr 12 '22 14:04 manusa

I recall I fixed the jkube-kit-common module a while ago to work under windows. I just run the tests in the master branch, and they are still passing (on my machine). I wouldn't expect any changes in that module.

Same for jkube-kit-common-maven, I'd expect only the minimum changes to make the tests pass.

Maybe new changes broke them again? I don't know what to tell you. If I changed something there is because I needed to. I didn't just change things because I like to, especially in my private time :)

cdprete avatar Apr 12 '22 18:04 cdprete

Maybe new changes broke them again? I don't know what to tell you. If I changed something there is because I needed to. I didn't just change things because I like to, especially in my private time :)

I ran the tests in master yesterday with no failures. This In your path you don't have spaces. I do :) might explain it. I'll try again with an env more similar to yours. But the end goal would be to keep the set of changes as minimal as possible.

manusa avatar Apr 13 '22 05:04 manusa

Maybe new changes broke them again? I don't know what to tell you. If I changed something there is because I needed to. I didn't just change things because I like to, especially in my private time :)

I ran the tests in master yesterday with no failures. This In your path you don't have spaces. I do :) might explain it. I'll try again with an env more similar to yours. But the end goal would be to keep the set of changes as minimal as possible.

Spaces were encoded as %20 and such value was then literally used, leading to non-existing paths.

cdprete avatar Apr 13 '22 07:04 cdprete

@manusa please let me know how you want to proceed with this :)

cdprete avatar Apr 17 '22 16:04 cdprete

@cdprete : Marc is on PTO and would be back on Friday so it might take some time to proceed forward.

In the meantime, Could you please resolve conflicts and address license check failure? mvn -N license:format

rohanKanojia avatar Apr 18 '22 08:04 rohanKanojia

@cdprete : Marc is on PTO and would be back on Friday so it might take some time to proceed forward.

In the meantime, Could you please resolve conflicts and address license check failure? mvn -N license:format

@rohanKanojia Done :)

cdprete avatar Apr 18 '22 16:04 cdprete

After the rebase with master, the test org.eclipse.jkube.kit.config.service.kubernetes.JibBuildServiceBuildIntegrationTest#build_withLayersAndArtifact_shouldPerformJibBuild is now failing with

org.eclipse.jkube.kit.config.service.JKubeServiceException: Error when building JIB image

	at org.eclipse.jkube.kit.config.service.kubernetes.JibBuildService.buildSingleImage(JibBuildService.java:106)
	at org.eclipse.jkube.kit.config.service.AbstractImageBuildService.processImage(AbstractImageBuildService.java:53)
	at org.eclipse.jkube.kit.config.service.AbstractImageBuildService.build(AbstractImageBuildService.java:34)
	at org.eclipse.jkube.kit.config.service.kubernetes.JibBuildServiceBuildIntegrationTest.build_withLayersAndArtifact_shouldPerformJibBuild(JibBuildServiceBuildIntegrationTest.java:136)
Caused by: java.lang.IllegalStateException: java.util.concurrent.ExecutionException: java.nio.file.NoSuchFileException: C:\Users\COSIMO~1\AppData\Local\Temp\jib-core-application-layers-cache\layers\88574cb1d05e6ed7129d41c0dac03bc94af067f715a50523793ba5b4d10dec87\56caeb713c5ea325d824d1c28f72375b5c545bc00657baeba0bccddeaa873939
	at org.eclipse.jkube.kit.service.jib.JibServiceUtil.buildContainer(JibServiceUtil.java:108)
	at org.eclipse.jkube.kit.config.service.kubernetes.JibBuildService.buildSingleImage(JibBuildService.java:100)
	... 3 more
Caused by: java.util.concurrent.ExecutionException: java.nio.file.NoSuchFileException: C:\Users\COSIMO~1\AppData\Local\Temp\jib-core-application-layers-cache\layers\88574cb1d05e6ed7129d41c0dac03bc94af067f715a50523793ba5b4d10dec87\56caeb713c5ea325d824d1c28f72375b5c545bc00657baeba0bccddeaa873939
	at com.google.common.util.concurrent.AbstractFuture.getDoneValue(AbstractFuture.java:566)
	at com.google.common.util.concurrent.AbstractFuture.get(AbstractFuture.java:547)
	at com.google.common.util.concurrent.FluentFuture$TrustedFuture.get(FluentFuture.java:88)
	at com.google.cloud.tools.jib.builder.steps.StepsRunner.run(StepsRunner.java:219)
	at com.google.cloud.tools.jib.api.Containerizer.run(Containerizer.java:390)
	at com.google.cloud.tools.jib.api.JibContainerBuilder.containerize(JibContainerBuilder.java:598)
	at org.eclipse.jkube.kit.service.jib.JibServiceUtil.buildContainer(JibServiceUtil.java:100)
	... 4 more
Caused by: java.nio.file.NoSuchFileException: C:\Users\COSIMO~1\AppData\Local\Temp\jib-core-application-layers-cache\layers\88574cb1d05e6ed7129d41c0dac03bc94af067f715a50523793ba5b4d10dec87\56caeb713c5ea325d824d1c28f72375b5c545bc00657baeba0bccddeaa873939
	at java.nio.file.Files.newByteChannel(Files.java:361)
	at java.nio.file.Files.newByteChannel(Files.java:407)
	at java.nio.file.spi.FileSystemProvider.newInputStream(FileSystemProvider.java:384)
	at java.nio.file.Files.newInputStream(Files.java:152)
	at com.google.cloud.tools.jib.blob.FileBlob.writeTo(FileBlob.java:38)
	at com.google.cloud.tools.jib.tar.TarStreamBuilder.writeAsTarArchiveTo(TarStreamBuilder.java:53)
	at com.google.cloud.tools.jib.image.ImageTarball.dockerWriteTo(ImageTarball.java:166)
	at com.google.cloud.tools.jib.image.ImageTarball.writeTo(ImageTarball.java:84)
	at com.google.cloud.tools.jib.builder.steps.WriteTarFileStep.call(WriteTarFileStep.java:66)
	at com.google.cloud.tools.jib.builder.steps.StepsRunner.lambda$writeTarFile$19(StepsRunner.java:635)
	at com.google.common.util.concurrent.TrustedListenableFutureTask$TrustedFutureInterruptibleTask.runInterruptibly(TrustedListenableFutureTask.java:125)
	at com.google.common.util.concurrent.InterruptibleTask.run(InterruptibleTask.java:69)
	at com.google.common.util.concurrent.TrustedListenableFutureTask.run(TrustedListenableFutureTask.java:78)
	at java.lang.Thread.run(Thread.java:750)
	Suppressed: java.io.IOException: This archive contains unclosed entries.
		at org.apache.commons.compress.archivers.tar.TarArchiveOutputStream.finish(TarArchiveOutputStream.java:291)
		at org.apache.commons.compress.archivers.tar.TarArchiveOutputStream.close(TarArchiveOutputStream.java:309)
		at com.google.cloud.tools.jib.tar.TarStreamBuilder.writeAsTarArchiveTo(TarStreamBuilder.java:56)
		at com.google.cloud.tools.jib.image.ImageTarball.dockerWriteTo(ImageTarball.java:166)
		at com.google.cloud.tools.jib.image.ImageTarball.writeTo(ImageTarball.java:84)
		at com.google.cloud.tools.jib.builder.steps.WriteTarFileStep.call(WriteTarFileStep.java:66)
		at com.google.cloud.tools.jib.builder.steps.StepsRunner.lambda$writeTarFile$19(StepsRunner.java:635)
		at com.google.common.util.concurrent.TrustedListenableFutureTask$TrustedFutureInterruptibleTask.runInterruptibly(TrustedListenableFutureTask.java:125)
		at com.google.common.util.concurrent.InterruptibleTask.run(InterruptibleTask.java:69)
		at com.google.common.util.concurrent.TrustedListenableFutureTask.run(TrustedListenableFutureTask.java:78)
		at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
		at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
		... 1 more

Have been done changes recently on the JIB build? I need to investigate this...

cdprete avatar May 01 '22 11:05 cdprete

hey @cdprete, any update on this?

sunix avatar Jun 10 '22 14:06 sunix

@sunix after the rebase with master, the compilation now fails harder than before:

[ERROR] Failed to execute goal org.apache.maven.plugins:maven-plugin-plugin:3.5.1:helpmojo (help-goal) on project openshift-maven-plugin: Execution help-goal of goal org.apache.maven.plugins:maven-plugin-plugin:3.5.1:helpmojo failed: The source must not be a directory. -> [Help 1]
org.apache.maven.lifecycle.LifecycleExecutionException: Failed to execute goal org.apache.maven.plugins:maven-plugin-plugin:3.5.1:helpmojo (help-goal) on project openshift-maven-plugin: Execution help-goal of goal org.apache.maven.plugins:maven-plugin-plugin:3.5.1:helpmojo failed: The source must not be a directory.
    at org.apache.maven.lifecycle.internal.MojoExecutor.doExecute (MojoExecutor.java:306)
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:211)
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:165)
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:157)
    at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:121)
    at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:81)
    at org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build (SingleThreadedBuilder.java:56)
    at org.apache.maven.lifecycle.internal.LifecycleStarter.execute (LifecycleStarter.java:127)
    at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:294)
    at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:192)
    at org.apache.maven.DefaultMaven.execute (DefaultMaven.java:105)
    at org.apache.maven.cli.MavenCli.execute (MavenCli.java:960)
    at org.apache.maven.cli.MavenCli.doMain (MavenCli.java:293)
    at org.apache.maven.cli.MavenCli.main (MavenCli.java:196)
    at sun.reflect.NativeMethodAccessorImpl.invoke0 (Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java:62)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke (Method.java:498)
    at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced (Launcher.java:282)
    at org.codehaus.plexus.classworlds.launcher.Launcher.launch (Launcher.java:225)
    at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode (Launcher.java:406)
    at org.codehaus.plexus.classworlds.launcher.Launcher.main (Launcher.java:347)
Caused by: org.apache.maven.plugin.PluginExecutionException: Execution help-goal of goal org.apache.maven.plugins:maven-plugin-plugin:3.5.1:helpmojo failed: The source must not be a directory.
    at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo (DefaultBuildPluginManager.java:148)
    at org.apache.maven.lifecycle.internal.MojoExecutor.doExecute (MojoExecutor.java:301)
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:211)
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:165)
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:157)
    at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:121)
    at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:81)
    at org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build (SingleThreadedBuilder.java:56)
    at org.apache.maven.lifecycle.internal.LifecycleStarter.execute (LifecycleStarter.java:127)
    at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:294)
    at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:192)
    at org.apache.maven.DefaultMaven.execute (DefaultMaven.java:105)
    at org.apache.maven.cli.MavenCli.execute (MavenCli.java:960)
    at org.apache.maven.cli.MavenCli.doMain (MavenCli.java:293)
    at org.apache.maven.cli.MavenCli.main (MavenCli.java:196)
    at sun.reflect.NativeMethodAccessorImpl.invoke0 (Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java:62)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke (Method.java:498)
    at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced (Launcher.java:282)
    at org.codehaus.plexus.classworlds.launcher.Launcher.launch (Launcher.java:225)
    at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode (Launcher.java:406)
    at org.codehaus.plexus.classworlds.launcher.Launcher.main (Launcher.java:347)
Caused by: org.codehaus.plexus.archiver.ArchiverException: The source must not be a directory.
    at org.codehaus.plexus.archiver.AbstractUnArchiver.validate (AbstractUnArchiver.java:185)
    at org.codehaus.plexus.archiver.AbstractUnArchiver.extract (AbstractUnArchiver.java:118)
    at org.apache.maven.tools.plugin.extractor.annotations.JavaAnnotationsMojoDescriptorExtractor.discoverClassesFromSourcesJar (JavaAnnotationsMojoDescriptorExtractor.java:225)
    at org.apache.maven.tools.plugin.extractor.annotations.JavaAnnotationsMojoDescriptorExtractor.scanJavadoc (JavaAnnotationsMojoDescriptorExtractor.java:177)
    at org.apache.maven.tools.plugin.extractor.annotations.JavaAnnotationsMojoDescriptorExtractor.execute (JavaAnnotationsMojoDescriptorExtractor.java:105)
    at org.apache.maven.tools.plugin.scanner.DefaultMojoScanner.populatePluginDescriptor (DefaultMojoScanner.java:96)
    at org.apache.maven.plugin.plugin.AbstractGeneratorMojo.execute (AbstractGeneratorMojo.java:259)
    at org.apache.maven.plugin.plugin.HelpGeneratorMojo.execute (HelpGeneratorMojo.java:92)
    at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo (DefaultBuildPluginManager.java:137)
    at org.apache.maven.lifecycle.internal.MojoExecutor.doExecute (MojoExecutor.java:301)
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:211)
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:165)
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:157)
    at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:121)
    at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:81)
    at org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build (SingleThreadedBuilder.java:56)
    at org.apache.maven.lifecycle.internal.LifecycleStarter.execute (LifecycleStarter.java:127)
    at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:294)
    at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:192)
    at org.apache.maven.DefaultMaven.execute (DefaultMaven.java:105)
    at org.apache.maven.cli.MavenCli.execute (MavenCli.java:960)
    at org.apache.maven.cli.MavenCli.doMain (MavenCli.java:293)
    at org.apache.maven.cli.MavenCli.main (MavenCli.java:196)
    at sun.reflect.NativeMethodAccessorImpl.invoke0 (Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java:62)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke (Method.java:498)
    at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced (Launcher.java:282)
    at org.codehaus.plexus.classworlds.launcher.Launcher.launch (Launcher.java:225)
    at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode (Launcher.java:406)
    at org.codehaus.plexus.classworlds.launcher.Launcher.main (Launcher.java:347)
[ERROR]
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR]
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/PluginExecutionException
[ERROR]
[ERROR] After correcting the problems, you can resume the build with the command
[ERROR]   mvn <args> -rf :openshift-maven-plugin

Before I was randomly having that error. Now it's persistent...

cdprete avatar Jun 11 '22 19:06 cdprete

@sunix all green. You can proceed if you like :) To work around the error I wrote about before, I just triggered the build again as suggested in the output from Maven. Weird enough, the k8s plugin doesn't exhibit this behavior even if they're the same. Finally, the "source" they're referring to points to the classes folder under target (just some short debugging).

cdprete avatar Jun 11 '22 21:06 cdprete

I usually like to encapsulate and hide such edge cases, also because in the future the condition(s) triggering a case may change and, in such a case, you would need to rename (at least) the method to keep consistency.

But I can rename it, of course. Not a big deal :)

Il Lun 13 Giu 2022, 15:35 Sun S. D. Tan @.***> ha scritto:

@.**** commented on this pull request.

In gradle-plugin/it/src/test/java/org/eclipse/jkube/gradle/plugin/tests/FileSecretIT.java https://github.com/eclipse/jkube/pull/1416#discussion_r895723699:

 assertThat(result).extracting(BuildResult::getOutput).asString()
     .contains("Using resource templates from")
     .contains("Adding revision history limit to 2")
     .contains("validating");

} +

  • /**
    • On Windows, the separator used across lines is "\r\n" in contrast to *nix system where it's "\n".
    • This function expects as input the file used for comparison in the tests and, if the test(s) is(are) running on
    • Windows, then re-encodes the secret in them so that the Base64 string is the same between the expected file and the
    • generated one.
    • This is necessary because the comparison file contains the Base64 string calculated from a *nix machine.
    • @param expectedFile the file used for comparison
    • @return a file which has the same content as @.*** expectedFile}, but with the secret re-encoded
  • */
  • private File adjustSecretEncoding(File expectedFile) throws IOException {

Minor maybe rename it adjustSecretEncodingOnWindows

— Reply to this email directly, view it on GitHub https://github.com/eclipse/jkube/pull/1416#pullrequestreview-1004340474, or unsubscribe https://github.com/notifications/unsubscribe-auth/ACAZGWE4AEC42B2EGONYNY3VO42KRANCNFSM5SMRVPOA . You are receiving this because you were mentioned.Message ID: @.***>

cdprete avatar Jun 13 '22 15:06 cdprete

I usually like to encapsulate and hide such edge cases, also because in the future the condition(s) triggering a case may change and, in such a case, you would need to rename (at least) the method to keep consistency. But I can rename it, of course. Not a big deal :)

Yes not a big deal :) To me it really depends: here it important to tell the reader "this is for Windows! You can ignore it if you are not on Windows".

sunix avatar Jun 13 '22 16:06 sunix

@sunix unless I've by accident missed something, all the discussions are resolved. Maybe just have a final rapid look if you can :)

cdprete avatar Jun 24 '22 15:06 cdprete

@manusa could you have a look? (once you are back from PTO ;) )

sunix avatar Jun 27 '22 10:06 sunix

@cdprete hey, so we have discussed with the team and it is taking time for us (among the others tasks we are working on) The problem is that it is a quite big PR. So either

  • you wait until we find some time to make the review
  • or you split this PR into smaller PRs that we could review and merge one after the other.

I hope you understand. Let us know what's work for you and thanks again for contributing!

sunix avatar Jul 04 '22 08:07 sunix

Hi @sunix. I don't think it makes so much sense to split it into multiple PRs since, in the end, it's just a small refactoring. Moreover, it would take me quite some time if I should split the things now. It would have been different if I was asked to do this from the beginning.

Therefore, from my side you can put this on hold. I don't know how much time I'll have to keep things up to date, though.

cdprete avatar Jul 04 '22 09:07 cdprete

@cdprete : Sorry for the late response on this one.

We have broken the issue into module-wise smaller refactors. Your PR helped me in creating the issues.

rohanKanojia avatar Mar 13 '24 19:03 rohanKanojia