Operator-sdk: Support CRI-O

Created on 24 Sep 2019  路  10Comments  路  Source: operator-framework/operator-sdk

Feature Request

Is your feature request related to a problem? Please describe.
I've moved to CRI-O, but you are requiring Docker.

Describe the solution you'd like
I think you should support CRI-O too.

kinfeature

Most helpful comment

Thank-you!

All 10 comments

Hi @hupiper,

Could you please add here your env and actions performed? Also, if possible the error faced when you try to use it with CRI-O.

The problem is that you need Docker installed. If I generate a new tree for Ansible and run the build command:
[mdunnett@mdunnett image-uploader-operator]$ operator-sdk build image-upload-operator:v.1 INFO[0000] Building OCI image image-upload-operator:v.1 Error: failed to output build image image-upload-operator:v.1: (failed to exec []string{"docker", "build", "-f", "build/Dockerfile", "-t", "image-upload-operator:v.1", "."}: exec: "docker": executable file not found in $PATH)

If I run the build command pointing at Podman:
[mdunnett@mdunnett image-uploader-operator]$ operator-sdk build image-upload-operator:v.1 --image-builder podman INFO[0000] Building OCI image image-upload-operator:v.1 ERRO[0000] No subuid ranges found for user "mdunnett" in /etc/subuid Error: failed to output build image image-upload-operator:v.1: (failed to exec []string{"podman", "build", "-f", "build/Dockerfile", "-t", "image-upload-operator:v.1", "."}: exit status 1)

If I put mdunnett in subuid: sudo usermod --add-subuids 10000-65536 mdunnett

I get [mdunnett@mdunnett image-uploader-operator]$ operator-sdk build image-upload-operator:v.1 --image-builder podman INFO[0000] Building OCI image image-upload-operator:v.1 ERRO[0000] No subgid ranges found for group "mdunnett" in /etc/subgid Error: failed to output build image image-upload-operator:v.1: (failed to exec []string{"podman", "build", "-f", "build/Dockerfile", "-t", "image-upload-operator:v.1", "."}: exit status 1)

It just doesn't seem to work

This is on RHEL8

@hupiper for a short term have you considered installing podman-docker?

Once I got the permissions figured out that I mentioned above, I started getting errors for XFS as an overlay being unsupported. It turns out Podman was not happy when I installed container-tools. I had to delete the storage.conf file for podman, then reinstall it - see http://chris.collins.is/2019/01/25/podman-overlay-is-not-supported-over-xfs/. My storage.conf file was in a different place than the location mentioned in the Chris Collins blog. Mine was in /home//.config/containers/storage.conf

Thank for share @hupiper.

HI @hupiper,

I'd like to share with you that, regards the supportability of CRI-O, it is 100% supported by SDK projects already. But you would need to add its files and customize its generation by using the Makefile.

In order to make it simple, I'd recommend you keep the Dockerfile which is created by default for you and just customize via the build dir and Makefile targets the generation of this type. See here an example of an Makefile.

As described in the comment https://github.com/operator-framework/operator-sdk/pull/2054#issuecomment-542262737 was decided not to move forward with this type of request. The reason for that is because we are looking for changes in the design to bring more flexibility to our users.

In this way, we are closing this issue as this project has no plans to add support for CRI-O in operator-sdk build. However, please feel free to re-open if you think that it is required.

Also, here's some background that may help explain our thought process here: https://github.com/operator-framework/operator-sdk/pull/1600#issuecomment-506730405

Thank-you!

Was this page helpful?
0 / 5 - 0 ratings

Related issues

kristiandrucker picture kristiandrucker  路  5Comments

surajssd picture surajssd  路  3Comments

hasbro17 picture hasbro17  路  3Comments

TristanCacqueray picture TristanCacqueray  路  5Comments

gyliu513 picture gyliu513  路  3Comments