DEV Community

Query Filter
Query Filter

Posted on

docker141

Here is the report formatted in Markdown, which is the standard format for dev.to. You can copy and paste this directly into the editor.


Project Readiness Report: ETSF Library Migration (Java 21)

🟒 Status: 99% Ready

Date: May 13, 2026

Author: Leonid

Subject: Migration Completion and Infrastructure Readiness


1. Executive Summary

The ETSF library migration is effectively complete. The codebase has been refactored from legacy standards to Java 21, ensuring compatibility with modern enterprise infrastructure. We have successfully transitioned the source control to the internal GitHub organization and optimized the CI/CD pipeline for library distribution.

2. Source Code & Remote Configuration

The source code has been consolidated and pushed to the new internal repository. Authentication was successfully handled via standard security protocols during the transfer.

Repository Path: https://github.com/CitiInternal/156783.comet.etsf.git

# Push confirmation from local main to origin_etsf
Enumerating objects: 71038, done.
Counting objects: 100% (71038/71038), done.
Delta compression using up to 8 threads
Compressing objects: 100% (20375/20375), done.
Writing objects: 100% (71038/71038), 372.78 MiB | 15.51 MiB/s, done.
Total 71038 (delta 49216), reused 68175 (delta 47610), pack-reused 0
To https://github.com/CitiInternal/156783.comet.etsf.git
 * [new branch]      main -> main

Enter fullscreen mode Exit fullscreen mode

3. Dependency Enforcement (Spring 6.1.10)

To resolve conflicts found during the Java 21 refactoring, I have implemented a global resolutionStrategy. This enforces Spring 6.1.10 across all configurations to prevent legacy versions from being implicitly pulled in by sub-dependencies.

// build.gradle logic
configurations.configureEach {
    resolutionStrategy.eachDependency { DependencyResolveDetails details ->
        if (details.requested.group == 'org.springframework') {
            details.useVersion '6.1.10'
            details.because 'Required for Java 21 and ETSF migration'
        }
    }
}

Enter fullscreen mode Exit fullscreen mode

4. Pipeline Optimization

The Tekton pipeline.yaml has been streamlined. Since this is a core library currently without a dedicated test suite, I have stripped the test execution tasks to reduce build time and prevent "Missing Source" errors, while preserving the artifact publishing logic.

5. Final Integration Requirements

The publishing block in build.gradle is staged. To move from the current local-build placeholder to a production-ready Artifactory state, the following environmental details are required:

  • Artifactory URL: Final storage path for the Maven repository.
  • Target Publication Name: Confirmation of naming conventions (currently using myPlatform).
  • CI/CD Secrets: Mapping of Artifactory credentials within the Tekton environment.
publishing {
    publications {
        create('myPlatform', MavenPublication) {
            from components.java
        }
    }
    repositories {
        maven {
            name = "myrepo"
            url = // Manager to provide Artifactory Destination URL
        }
    }
}

Enter fullscreen mode Exit fullscreen mode

Generated for Internal Project Tracking - ETSF Migration Team

Top comments (0)