Skip to content
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

No Snapshot Docker images are built for enterprise versions #3515

Closed
12 tasks done
yanavasileva opened this issue Jun 15, 2023 · 5 comments
Closed
12 tasks done

No Snapshot Docker images are built for enterprise versions #3515

yanavasileva opened this issue Jun 15, 2023 · 5 comments
Assignees
Labels
scope:ci Changes to the CI, e.g. Jenkins pipelines. scope:docker Changes to the Docker images. type:task Issues that are a change to the project that is neither a feature nor a bug fix. version:7.17.16 version:7.18.11 version:7.19.6 version:7.20.0-alpha5 version:7.20.0

Comments

@yanavasileva
Copy link
Member

yanavasileva commented Jun 15, 2023

Acceptance Criteria (Required on creation)

In the EE Main pipeline,

  • Trigger Docker EE GHA - must build and test patch snapshot for maintenance branches
  • Trigger Docker CE GHA must be skipped (not executed) for maintenance branches as we don't build CE for patches

Hints

  • Trigger Docker EE GHA stages run with the minor release version since 7.17 (when was introduced)
  • Trigger Docker CE GHA stages are triggered on daily basis at the moment but we don't build CE snapshots for maintenance branches
    • They push minor versions to the dockerhub (in other words overwrite for example 7.19.0 tag every time the stage run)

Links

Breakdown

Pull Requests

  1. tasso94
  2. tasso94
  3. tasso94
  4. tasso94
  5. tasso94

Dev2QA handover

  • Does this ticket need a QA test and the testing goals are not clear from the description? Add a Dev2QA handover comment
@yanavasileva yanavasileva added type:task Issues that are a change to the project that is neither a feature nor a bug fix. scope:ci Changes to the CI, e.g. Jenkins pipelines. scope:docker Changes to the Docker images. labels Jun 15, 2023
@ThorbenLindhauer ThorbenLindhauer changed the title Adjust Trigger Docker GHA CI stages for maintainance branches No Snapshot Docker images are built for enterprise versions Jun 15, 2023
@yanavasileva yanavasileva self-assigned this Jul 12, 2023
@yanavasileva
Copy link
Member Author

yanavasileva commented Jul 12, 2023

Trigger Docker CE GHA stage, decisions:

  • Add isDevelopmentVersion check to 7.20 and 7.19. The latter is added for test purposes, validating the check is working on maintenance branches. Once 7.20 is maintenance, the check will prevent triggering the stage and we don't need explicitly remove the stage during the minor release.
  • Remove the stage from 7.18 and 7.17 as it's obsolete either way

Assigning @tasso94 for a review, please merge the changes after the review.

@yanavasileva
Copy link
Member Author

yanavasileva commented Jul 12, 2023

WIP, Trigger Docker EE GHA stage:

  • The VERSION and SNAPSHOT are hardcoded in the Dockerfile, we cannot change them there as it publicly available repo and community are using the file to build docker images on their own
  • Tested that if we adjust those to arguments, the build and test of EE SNAPSHOT is working
  • Idea will be to pass those args from outside
    • Can we pass them from the daily pipeline? TBD, I don't see an option via camundaGitHubWorkflowDispatch
      • if you use in a standard way (example), creating a separate pipeline itself, you can pass inputs param for this.
  • Do we want to upload EE SNAPSHOT images? - No

@yanavasileva
Copy link
Member Author

yanavasileva commented Jul 13, 2023

Status quo:
The VERSION and SNAPSHOT are hardcoded in the Dockerfile. Therefore, in maintenance the build and test GHA is executed against 7.XX.0-ee. We cannot just adjust the Dockerfile as it publicly available repo and community are using the file to build docker images on their own.
For triggering the GHA the camundaGitHubWorkflowDispatch global function is used but not as out of the box (why not? - link)

Breakdown, handover of Trigger Docker EE GHA stage:

  • SNAPSHOT and VERSION arguments must be past from the Jenkins pipeline: to reduce maintenance efforts and avoid manual adjustments during minor releases. Also version can be fetched from the maven pom (7.19.5) in the camunda-bpm-platform-ee* repository, as in the docker repository is defined only the minor version (7.19.0)
    • version can be fetch via cambpmUtils.getMavenProjectVersion() or pom = readMavenPom file: 'pom.xml'
    • the arguments must be passed as INPUTS parameter (link) via the environment variables in the stage as we don't use out of the box camundaGitHubWorkflowDispatch global function
      • pros - minimal adjustments if this is possible
      • cons - not sure if it is possible to pass a list as environment variable
      • an alternative will be to extract the logic to a separate pipeline and use the camundaGitHubWorkflowDispatch global function out of the box by triggering it from the Daily pipeline and passing the project version as parameter. Example of usage: link
        • pros - straightforward usage without workarounds and we can make the daily EE pipeline to reflect whether the downstream pipeline fails
        • cons - yet another pipeline
  • build-and-test-ee.yml must be adjusted to accept SNAPSHOT and VERSION as inputs,
  • pipeline.sh must be adjusted to pass the SNAPSHOT and VERSION as build arguments;
  • changes must be applied and tested on 7.20 - 7.17
    • if default values are left in the pipeline.sh, 7.20 community CI might be possible to stay unchanged

@yanavasileva yanavasileva removed their assignment Jul 13, 2023
@tasso94 tasso94 self-assigned this Jul 14, 2023
tasso94 added a commit to camunda/docker-camunda-bpm-platform that referenced this issue Jul 18, 2023
tasso94 added a commit to camunda/docker-camunda-bpm-platform that referenced this issue Jul 18, 2023
tasso94 added a commit that referenced this issue Jul 18, 2023
@tasso94
Copy link
Member

tasso94 commented Jul 21, 2023

Tested scenarios:

tasso94 added a commit to camunda/docker-camunda-bpm-platform that referenced this issue Jul 21, 2023
tasso94 pushed a commit to camunda/docker-camunda-bpm-platform that referenced this issue Jul 21, 2023
@tasso94 tasso94 assigned psavidis and unassigned tasso94 Jul 21, 2023
@tasso94
Copy link
Member

tasso94 commented Jul 21, 2023

@psavidis, I'll backport to 7.17 once the other PRs are approved.

@psavidis psavidis assigned tasso94 and unassigned psavidis Jul 24, 2023
tasso94 pushed a commit to camunda/docker-camunda-bpm-platform that referenced this issue Jul 25, 2023
tasso94 pushed a commit to camunda/docker-camunda-bpm-platform that referenced this issue Jul 25, 2023
tasso94 added a commit to camunda/docker-camunda-bpm-platform that referenced this issue Jul 25, 2023
tasso94 pushed a commit to camunda/docker-camunda-bpm-platform that referenced this issue Jul 25, 2023
@tasso94 tasso94 assigned psavidis and unassigned tasso94 Jul 25, 2023
tasso94 added a commit to camunda/docker-camunda-bpm-platform that referenced this issue Jul 26, 2023
tasso94 added a commit to camunda/docker-camunda-bpm-platform that referenced this issue Jul 26, 2023
@tasso94 tasso94 assigned tasso94 and unassigned psavidis Jul 26, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
scope:ci Changes to the CI, e.g. Jenkins pipelines. scope:docker Changes to the Docker images. type:task Issues that are a change to the project that is neither a feature nor a bug fix. version:7.17.16 version:7.18.11 version:7.19.6 version:7.20.0-alpha5 version:7.20.0
Projects
None yet
Development

No branches or pull requests

4 participants