Skip to content

Refactor package structure to align with target architecture#489

Merged
DerDaehne merged 19 commits into
developfrom
feature/rename-feature-and-new-package-structure
May 20, 2026
Merged

Refactor package structure to align with target architecture#489
DerDaehne merged 19 commits into
developfrom
feature/rename-feature-and-new-package-structure

Conversation

@avetgit
Copy link
Copy Markdown
Contributor

@avetgit avetgit commented May 19, 2026

This PR restructures the package layout to better reflect the intended architectural boundaries.

Changes include:

  • move application-level flow and context concerns into dedicated application packages
  • group deployable tools into dedicated tool package
  • separate technical integrations into infrastructure package
  • relocate content-related logic to application package
  • improve overall package clarity and navigation

This PR is mainly a structural preparation step and is not intended to introduce significant behavioral changes.

nihussmann and others added 19 commits May 12, 2026 13:19
* with the introduction of the develop branch, we need jenkins to
build the weekly builds on develop, not on main anylonger.
We also want to have an image with the tag "develop" available
which reflects the latest development version of gop

* with the introduction of the develop branch, renovate should use it
as the target branch within pull requests

* Update application-dev.yaml

* Update application-dev.yaml

* Init commit: add repoContext and repoInitializer

* translate comment to englisch

* Rename and bugfix deploying  prometheusStack misc dashboard

* Merge RepoContext and RepoIntializer into ArgoCDRepoContext

* Move prepareGitOps to ArgoCDRepoSetup and fix ArgoCD unit tests

* docs and code format rules added

* adding .png

* imports

* update

* update

* review changes, rebase develop

---------

Co-authored-by: David Daehne <david.daehne@cloudogu.com>
Co-authored-by: avetgit <111436035+avetgit@users.noreply.github.com>
Co-authored-by: Anna Vetcininova <anna.vetcininova@cloudogu.com>
Co-authored-by: Thomas Michael <thomas.michael@cloudogu.com>
* with the introduction of the develop branch, we need jenkins to
build the weekly builds on develop, not on main anylonger.
We also want to have an image with the tag "develop" available
which reflects the latest development version of gop

* with the introduction of the develop branch, renovate should use it
as the target branch within pull requests

* Update application-dev.yaml

* Update application-dev.yaml

* Merge pull request #482 from cloudogu/feature/newImageDescription

Change docker image description

---------

Co-authored-by: avetgit <111436035+avetgit@users.noreply.github.com>
Co-authored-by: Thomas <thomas@thomasmichael.de>
…ture

# Conflicts:
#	Jenkinsfile
#	src/main/groovy/com/cloudogu/gitops/Application.groovy
#	src/main/groovy/com/cloudogu/gitops/Feature.groovy
#	src/main/groovy/com/cloudogu/gitops/FeatureWithImage.groovy
#	src/main/groovy/com/cloudogu/gitops/config/ApplicationConfigurator.groovy
#	src/main/groovy/com/cloudogu/gitops/config/CommonFeatureConfig.groovy
#	src/main/groovy/com/cloudogu/gitops/config/MultiTenantSchema.groovy
#	src/main/groovy/com/cloudogu/gitops/dependencyinjection/HttpClientFactory.groovy
#	src/main/groovy/com/cloudogu/gitops/destroy/ArgoCDDestructionHandler.groovy
#	src/main/groovy/com/cloudogu/gitops/destroy/JenkinsDestructionHandler.groovy
#	src/main/groovy/com/cloudogu/gitops/destroy/ScmmDestructionHandler.groovy
#	src/main/groovy/com/cloudogu/gitops/features/ContentLoader.groovy
#	src/main/groovy/com/cloudogu/gitops/features/ExternalSecretsOperator.groovy
#	src/main/groovy/com/cloudogu/gitops/features/Jenkins.groovy
#	src/main/groovy/com/cloudogu/gitops/features/Monitoring.groovy
#	src/main/groovy/com/cloudogu/gitops/features/Registry.groovy
#	src/main/groovy/com/cloudogu/gitops/features/Vault.groovy
#	src/main/groovy/com/cloudogu/gitops/features/argocd/ArgoCD.groovy
#	src/main/groovy/com/cloudogu/gitops/features/argocd/ArgoCDRepoSetup.groovy
#	src/main/groovy/com/cloudogu/gitops/features/argocd/RepoInitializationAction.groovy
#	src/main/groovy/com/cloudogu/gitops/features/argocd/RepoLayout.groovy
#	src/main/groovy/com/cloudogu/gitops/features/deployment/ArgoCdApplicationStrategy.groovy
#	src/main/groovy/com/cloudogu/gitops/features/deployment/DeploymentStrategy.groovy
#	src/main/groovy/com/cloudogu/gitops/features/deployment/HelmStrategy.groovy
#	src/main/groovy/com/cloudogu/gitops/features/git/GitHandler.groovy
#	src/main/groovy/com/cloudogu/gitops/features/git/config/ScmCentralSchema.groovy
#	src/main/groovy/com/cloudogu/gitops/features/git/config/ScmTenantSchema.groovy
#	src/main/groovy/com/cloudogu/gitops/features/git/config/util/GitlabConfig.groovy
#	src/main/groovy/com/cloudogu/gitops/features/git/config/util/ScmManagerConfig.groovy
#	src/main/groovy/com/cloudogu/gitops/features/git/config/util/ScmProviderType.groovy
#	src/main/groovy/com/cloudogu/gitops/git/GitRepo.groovy
#	src/main/groovy/com/cloudogu/gitops/git/GitRepoFactory.groovy
#	src/main/groovy/com/cloudogu/gitops/git/jgit/helpers/InsecureCredentialProvider.groovy
#	src/main/groovy/com/cloudogu/gitops/git/providers/GitProvider.groovy
#	src/main/groovy/com/cloudogu/gitops/git/providers/gitlab/Gitlab.groovy
#	src/main/groovy/com/cloudogu/gitops/git/providers/scmmanager/Permission.groovy
#	src/main/groovy/com/cloudogu/gitops/git/providers/scmmanager/ScmManager.groovy
#	src/main/groovy/com/cloudogu/gitops/git/providers/scmmanager/ScmManagerUrlResolver.groovy
#	src/main/groovy/com/cloudogu/gitops/git/providers/scmmanager/api/AuthorizationInterceptor.groovy
#	src/main/groovy/com/cloudogu/gitops/git/providers/scmmanager/api/PluginApi.groovy
#	src/main/groovy/com/cloudogu/gitops/git/providers/scmmanager/api/Repository.groovy
#	src/main/groovy/com/cloudogu/gitops/git/providers/scmmanager/api/RepositoryApi.groovy
#	src/main/groovy/com/cloudogu/gitops/git/providers/scmmanager/api/ScmManagerApi.groovy
#	src/main/groovy/com/cloudogu/gitops/git/providers/scmmanager/api/ScmManagerApiClient.groovy
#	src/main/groovy/com/cloudogu/gitops/git/providers/scmmanager/api/ScmManagerUser.groovy
#	src/main/groovy/com/cloudogu/gitops/git/providers/scmmanager/api/UsersApi.groovy
#	src/main/groovy/com/cloudogu/gitops/jenkins/JenkinsApiClient.groovy
#	src/main/groovy/com/cloudogu/gitops/jenkins/JobManager.groovy
#	src/main/groovy/com/cloudogu/gitops/jenkins/PrometheusConfigurator.groovy
#	src/main/groovy/com/cloudogu/gitops/jenkins/UserManager.groovy
#	src/main/groovy/com/cloudogu/gitops/kubernetes/api/HelmClient.groovy
#	src/main/groovy/com/cloudogu/gitops/kubernetes/api/K8sClient.groovy
#	src/main/groovy/com/cloudogu/gitops/kubernetes/api/K8sJavaApiClient.groovy
#	src/main/groovy/com/cloudogu/gitops/kubernetes/argocd/ArgoApplication.groovy
#	src/main/groovy/com/cloudogu/gitops/kubernetes/rbac/RbacDefinition.groovy
#	src/main/groovy/com/cloudogu/gitops/kubernetes/rbac/Role.groovy
#	src/main/groovy/com/cloudogu/gitops/kubernetes/rbac/RoleBinding.groovy
#	src/main/groovy/com/cloudogu/gitops/kubernetes/rbac/ServiceAccountRef.groovy
#	src/main/groovy/com/cloudogu/gitops/okhttp/RetryInterceptor.groovy
#	src/main/groovy/com/cloudogu/gitops/okhttp/ScmManagerAPI.groovy
#	src/main/groovy/com/cloudogu/gitops/utils/AirGappedUtils.groovy
#	src/main/groovy/com/cloudogu/gitops/utils/NetworkingUtils.groovy
#	src/test/groovy/com/cloudogu/gitops/FeatureTest.groovy
#	src/test/groovy/com/cloudogu/gitops/features/ExternalSecretsOperatorTest.groovy
#	src/test/groovy/com/cloudogu/gitops/features/IngressTest.groovy
#	src/test/groovy/com/cloudogu/gitops/features/RegistryTest.groovy
#	src/test/groovy/com/cloudogu/gitops/features/VaultTest.groovy
#	src/test/groovy/com/cloudogu/gitops/features/deployment/ArgoCdApplicationStrategyTest.groovy
#	src/test/groovy/com/cloudogu/gitops/features/deployment/DeployerTest.groovy
#	src/test/groovy/com/cloudogu/gitops/features/git/GitHandlerTest.groovy
#	src/test/groovy/com/cloudogu/gitops/git/GitRepoTest.groovy
#	src/test/groovy/com/cloudogu/gitops/git/jgit/helpers/InsecureCredentialProviderTest.groovy
#	src/test/groovy/com/cloudogu/gitops/git/providers/scmmanager/ScmManagerTest.groovy
#	src/test/groovy/com/cloudogu/gitops/git/providers/scmmanager/api/UsersApiTest.groovy
#	src/test/groovy/com/cloudogu/gitops/infrastructure/deployment/HelmStrategyTest.groovy
#	src/test/groovy/com/cloudogu/gitops/infrastructure/git/providers/scmmanager/ScmManagerUrlResolverTest.groovy
#	src/test/groovy/com/cloudogu/gitops/infrastructure/jenkins/GlobalPropertyManagerTest.groovy
#	src/test/groovy/com/cloudogu/gitops/infrastructure/kubernetes/rbac/RbacDefinitionTest.groovy
#	src/test/groovy/com/cloudogu/gitops/jenkins/JenkinsApiClientTest.groovy
#	src/test/groovy/com/cloudogu/gitops/jenkins/JobManagerTest.groovy
#	src/test/groovy/com/cloudogu/gitops/jenkins/UserManagerTest.groovy
#	src/test/groovy/com/cloudogu/gitops/kubernetes/api/K8sJavaApiTest.groovy
#	src/test/groovy/com/cloudogu/gitops/kubernetes/rbac/ArgocdApplicationTest.groovy
#	src/test/groovy/com/cloudogu/gitops/okhttp/RetryInterceptorTest.groovy
#	src/test/groovy/com/cloudogu/gitops/tools/MonitoringTest.groovy
#	src/test/groovy/com/cloudogu/gitops/tools/core/ScmManagerSetupTest.groovy
#	src/test/groovy/com/cloudogu/gitops/tools/core/argocd/ArgoCDRepoSetupTest.groovy
#	src/test/groovy/com/cloudogu/gitops/tools/core/argocd/ArgoCDTest.groovy
#	src/test/groovy/com/cloudogu/gitops/utils/AirGappedUtilsTest.groovy
#	src/test/groovy/com/cloudogu/gitops/utils/HelmClientTest.groovy
#	src/test/groovy/com/cloudogu/gitops/utils/K8sClientForTest.groovy
#	src/test/groovy/com/cloudogu/gitops/utils/K8sClientTest.groovy
#	src/test/groovy/com/cloudogu/gitops/utils/TestLogger.groovy
#	src/test/groovy/com/cloudogu/gitops/utils/git/GitHandlerForTests.groovy
#	src/test/groovy/com/cloudogu/gitops/utils/git/GitlabMock.groovy
#	src/test/groovy/com/cloudogu/gitops/utils/git/TestGitProvider.groovy
#	src/test/groovy/com/cloudogu/gitops/utils/git/TestGitRepoFactory.groovy
#	src/test/groovy/com/cloudogu/gitops/utils/git/TestScmManagerApiClient.groovy
@DerDaehne DerDaehne self-assigned this May 20, 2026
Copy link
Copy Markdown
Contributor

@DerDaehne DerDaehne left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@DerDaehne DerDaehne merged commit 7cb6481 into develop May 20, 2026
1 check passed
@DerDaehne DerDaehne deleted the feature/rename-feature-and-new-package-structure branch May 20, 2026 10:48
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants