Skip to content

Update solr-docker to include multiarch support #6876

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

Closed
wants to merge 1 commit into from

Conversation

mcalcote
Copy link
Contributor

What does this PR do?

Updates the fabric8 plugin and adds multi-architecture builds for the ddf-solr image.

Who is reviewing it?

@middlets719
@rececoffin

Select relevant component teams:

@codice/build

Ask 2 committers to review/merge the PR and tag them here.

@figliold
@pklinef
@ryeats

How should this be tested?

Confirm the changes match description here: https://dmp.fabric8.io/#build-buildx
Build the solr-docker module locally and confirm the resulting image matches your system's architecture.

Any background context you want to provide?

The configuration block should be valid for the deploy phase and buildx will produce a manifest for both images.

Checklist:

  • Documentation Updated
  • Update / Add Threat Dragon models
  • Update / Add Unit Tests
  • Update / Add Integration Tests

Notes on Review Process

Please see Notes on Review Process for further guidance on requirements for merging and abbreviated reviews.

Review Comment Legend:

  • ✏️ (Pencil) This comment is a nitpick or style suggestion, no action required for approval. This comment should provide a suggestion either as an in line code snippet or a gist.
  • ❓ (Question Mark) This comment is to gain a clearer understanding of design or code choices, clarification is required but action may not be necessary for approval.
  • ❗ (Exclamation Mark) This comment is critical and requires clarification or action before approval.

@CLAassistant
Copy link

CLAassistant commented Mar 21, 2025

CLA assistant check
All committers have signed the CLA.

@LinkMJB
Copy link
Contributor

LinkMJB commented Mar 24, 2025

build now

@cxddfbot
Copy link

Internal build has been started, your results will be available at build completion.

@rececoffin
Copy link
Contributor

Built the image locally and it was tagged with the correct architecture on my M1
Screenshot 2025-03-24 at 8 04 39 AM

@cxddfbot
Copy link

Build FAILURE See the job results in legacy Jenkins UI or in Blue Ocean UI.

@mcalcote
Copy link
Contributor Author

[2025-03-24T15:14:17.809Z] [WARNING] DOCKER> docker: 'buildx' is not a docker command.
[2025-03-24T15:14:17.809Z] [WARNING] DOCKER> See 'docker --help'
[2025-03-24T15:14:17.809Z] [INFO] DOCKER> docker --config /jenkins/workspace/DDF/PR-6876/1/distribution/docker/solr-docker/target/docker/docker.io/codice/ddf-solr/3.1.0-SNAPSHOT/docker buildx create --driver docker-container --name maven
[2025-03-24T15:14:17.809Z] [INFO] DOCKER> unknown flag: --driver

...

[2025-03-24T15:14:17.810Z] [ERROR] DOCKER> Error status (125) while creating builder maven

@LinkMJB Do you know which version of docker is used in the build?

@LinkMJB
Copy link
Contributor

LinkMJB commented Mar 24, 2025

[2025-03-24T15:14:17.809Z] [WARNING] DOCKER> docker: 'buildx' is not a docker command.
[2025-03-24T15:14:17.809Z] [WARNING] DOCKER> See 'docker --help'
[2025-03-24T15:14:17.809Z] [INFO] DOCKER> docker --config /jenkins/workspace/DDF/PR-6876/1/distribution/docker/solr-docker/target/docker/docker.io/codice/ddf-solr/3.1.0-SNAPSHOT/docker buildx create --driver docker-container --name maven
[2025-03-24T15:14:17.809Z] [INFO] DOCKER> unknown flag: --driver

...

[2025-03-24T15:14:17.810Z] [ERROR] DOCKER> Error status (125) while creating builder maven

@LinkMJB Do you know which version of docker is used in the build?

In order to maintain compatibility with the current DC/OS stack, Docker is at version 17.05.0-ce:

[root@tron ~]# docker --version
Docker version 17.05.0-ce, build 89658be

@mcalcote
Copy link
Contributor Author

@LinkMJB Do you know which version of docker is used in the build?

In order to maintain compatibility with the current DC/OS stack, Docker is at version 17.05.0-ce:

[root@tron ~]# docker --version
Docker version 17.05.0-ce, build 89658be

Using buildx with Docker requires Docker engine 19.03 or newer. Are we stuck on 17 for compatibility?

@LinkMJB
Copy link
Contributor

LinkMJB commented Mar 24, 2025

@LinkMJB Do you know which version of docker is used in the build?

In order to maintain compatibility with the current DC/OS stack, Docker is at version 17.05.0-ce:

[root@tron ~]# docker --version
Docker version 17.05.0-ce, build 89658be

Using buildx with Docker requires Docker engine 19.03 or newer. Are we stuck on 17 for compatibility?

Correct. I can try testing upgrade to 19.03 on one of the build nodes and see what breaks, if this is critical functionality we need to add to the project. I think the last time I tried exceeding what was listed on the DC/OS compatibility matrix, it wouldn't function though.

@LinkMJB
Copy link
Contributor

LinkMJB commented Mar 31, 2025

@LinkMJB Do you know which version of docker is used in the build?

In order to maintain compatibility with the current DC/OS stack, Docker is at version 17.05.0-ce:

[root@tron ~]# docker --version
Docker version 17.05.0-ce, build 89658be

Using buildx with Docker requires Docker engine 19.03 or newer. Are we stuck on 17 for compatibility?

Correct. I can try testing upgrade to 19.03 on one of the build nodes and see what breaks, if this is critical functionality we need to add to the project. I think the last time I tried exceeding what was listed on the DC/OS compatibility matrix, it wouldn't function though.

I tried to do the Docker upgrade and it is turning out to be non-trivial even for trying to upgrade the Docker package. Docker totally removed the x86_64 packages for RHEL7 for some reason. I’m digging to see if RedHat themselves maintained a copy, but if not then my only option would be to build from source since RHEL8 won’t be compatible with DC/OS. Long-term, I need to get everything in the Connexta infrastructure that lives on top of DC/OS migrated to OpenShift or Kubernetes.

@mcalcote
Copy link
Contributor Author

mcalcote commented Apr 1, 2025

Given the restrictions outlined by @LinkMJB, this change set cannot be merged at this time as it would impede other changes in a potential near term release. An issue was opened to track the underlying problem: #6881

@mcalcote mcalcote closed this Apr 1, 2025
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.

5 participants