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

chore: add docker-compose-mac-dev.yml #628

Closed
wants to merge 1 commit into from

Conversation

jshimkus-rh
Copy link
Contributor

Makes docker-compose-mac.yml largely identical to docker-compose-dev.yaml. Hopefully this will make it easier to incorporate future updates between (in both directions) the files easier.

@jshimkus-rh jshimkus-rh requested a review from a team as a code owner January 29, 2024 20:57
@mkanoor
Copy link
Contributor

mkanoor commented Jan 30, 2024

@jshimkus-rh Are there pre-reqs to this PR
When I run it with my current setup the pods don't startup

WARNING: The EDA_HOST_PODMAN_SOCKET_URL variable is not set. Defaulting to a blank string.
Creating volume "docker_podman_data" with default driver
Pulling podman-pre-setup (quay.io/containers/podman:v4)...
7eaf774f9ce1: Download complete
c8d184852bb2: Download complete
34fa8cad82a0: Download complete
74eee9c10a6d: Download complete
cb70ad9471e1: Download complete
4aeaa23602b2: Download complete
d367bcc8d193: Download complete
39d83fc23602: Download complete
80f84ed70059: Download complete
1017ffc03448: Download complete
Pulling eda-scheduler (localhost/aap-eda:)...
ERROR: connection refused

@jshimkus-rh
Copy link
Contributor Author

@mkanoor That's what @Alex-Izquierdo was concerned about. Try as I might I couldn't make that happen; don't know why and it's not worth it right now to figure it out. I've gone back to the previous handling (see my latest commit) of EDA_HOST_PODMAN_SOCKET_URL and try it with that; presumably it should not be a problem, now.

@@ -33,7 +54,10 @@ services:
condition: service_healthy

eda-api:
image: "${EDA_IMAGE:-quay.io/ansible/eda-server:main}"
image: "${EDA_IMAGE:-localhost/aap-eda}"
Copy link
Contributor

Choose a reason for hiding this comment

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

@jshimkus-rh Does this mean now we have to provide an EDA_IMAGE env var to get to use the default image from quay.io. Shouldn't this default the other way around. By default we use quay unless the developer wants to override it. If we have a UI developer who wants to use podman they have to change the EDA_IMAGE to point to quay.io/ansible/eda-server:main because they will never build the eda-server locally.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

The question I infer from this is what is the purpose of the different compose files?
As a developer of the "engine" (i.e., something functional even w/o a UI; the desirability of which, product-wise, appears to be somewhat unclear based on things I've heard) who uses a Mac I'm interested in default establishment of an "engine" development environment. The differences between the *-mac.yaml and *-dev.yml files which have accumulated making the two development environments differ is a "bad" thing and my motivation in more closely aligning them.
That is not to say there isn't a need for what you describe, though rather than having a single file that has to pull double-duty I think it is preferable to have a specific, shall we say, "canned" compose for that purpose. With changes that have been made in relation to podman support it appears that docker-compose-stage.yaml provides that. If not, we could easily create such.

Copy link
Contributor

Choose a reason for hiding this comment

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

I agree with @jshimkus-rh In linux we want to run the current code by default, not the quay image. Maybe the point here is what mimics the mac version, the dev environment or the stage one.

Copy link
Contributor

@mkanoor mkanoor Jan 31, 2024

Choose a reason for hiding this comment

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

@Alex-Izquierdo We have 2 kinds of developers 1 developing the UI and another developing the API Server. If I am a UI developer I don't want to build the API Server image and if I am an API Server I don't want to build the UI image. If this tool needs to be embraced by both kinds of developers the default needs to be fetch standard quay images and a developer can override their local ones to use the image of their choice. In Mac there is only 1 docker file unlike the dev and stage in Llnux. If we are using local builds we just override the EDA_IMAGE and everything else falls into place. When we started the EDA-SERVER development we used to build the UI and server images locally and use them locally. Now the patterns are changing we use standard quay images as much as possible and even for local PR testing we have been pushing images to our private quay repos and making the images public so we can test without waiting for a final approval on the PR. Using quay images improves the speed of development across team members, allows for sharing of images akin to storing binaries in an ftp server without having to build anything locally.

@jshimkus-rh jshimkus-rh changed the title fix: docker-compose-mac.yml chore: add docker-compose-mac-dev.yml Feb 8, 2024
@jshimkus-rh
Copy link
Contributor Author

This has been changed to the addition of a docker-compose-mac-dev.yaml as a compose file closely following the docker-compose-dev.yaml file. Usage is a user's option.

This file closely matches the docker-compose-dev.yaml file.
@jshimkus-rh jshimkus-rh deleted the updated-mac-compose branch May 31, 2024 14:56
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.

None yet

3 participants