-
Notifications
You must be signed in to change notification settings - Fork 3.4k
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
Extending installer to use buildah instead of docker build #8969
Comments
That process is mostly correct, but you'd want to do that in a fork on GitHub. See https://opensource.com/article/19/7/create-pull-request-github I would note that @shanemcd has been doing work on refactoring the image build , so there may be some overlap here. |
We would welcome a PR to add Buildah support, but this would need to be exposed an a configurable (non-default) option. Most folks don't use Buildah, and it is not as widely available as Docker is. Perhaps you could detect if Docker is installed, if not, then check for Buildah. I would also encourage you to consider |
@wenottingham Thanks a lot! This article looks like the sort of explaination I was searching for :-) @shanemcd I think you are right. And since I am half way there with buildah anyway, I will simply do both. It's not so much of an extra effort. So my proposed solution would roughly look like this and your feedback is obviously much appreciated: Inventory
check_vars
image_build
image_push
local_docker |
@it-baschtler In case you didn't see the open PR before it merged this morning, check this out: #8980. It removed a lot of code from the image_build role, and will probably require you to rebase. Regarding changes to local_docker, this install path will be going away in the not-too-distant future. See this thread for more information: https://groups.google.com/g/awx-project/c/47MjWSUQaOc/m/bCjSDn0eBQAJ |
@shanemcd Thanks for the hint, will do. If the local_docker is going byebye anyways, I will not look at this for the moment. Will try to get the changes in sometime later this week, depending on how time permits. |
@shanemcd Now I know what you meant with the buildah vs. podman thing. It seems that I had a bit of a missconception here on what buildah run is doing. I am going for podman now and skip buildah alltogether for the moment. So the installer is about building first, pushing then and installing after. Now, with that in mind, my question is this: In the kubernetes role:
And this is done in tasks/main.yml:
Isn't the tasks/main.yml portion kinda unreachable? I think the defaults/main.yml entry should go away. In fact I've tested that locally and seems to work and it seems to not break anything. I would want to put that into my PR together with the podman build and the fix of the postgre template. |
ISSUE TYPE
SUMMARY
I am trying to build my own custom image on a RHEL machine and that has an ancient version of Docker installed on it which does not support multi stage builds, which is required to build your own AWX Images. So I thought lets use buildah instead.
I did put a bit of effort into building all that is required into the installer of awx and would want to share that. Since there is no buildah module I am using the shell module instead. My two questions are:
See, this is my first time contributing to OpenSource. I did read the contribution guide but am still a bit lost on the part with the git rebase vs. git merge. So I hope you bare with me and help me out on this:
So my understanding was that I would have to:
git clone https://github.com/ansible/awx.git
do my changes
git commit --signoff
And what would be after that?
cheers,
Sebastian
The text was updated successfully, but these errors were encountered: