<div dir="ltr"><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Mon, May 18, 2020 at 10:37 AM Matthias Dellweg <<a href="mailto:mdellweg@redhat.com">mdellweg@redhat.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">In the long run, i want to publish a ci image based on centos and<br>
another one on fedora? Would you rather put the os_name in the tag? Or<br>
would you only include the os_name if it's not centos8?<br>
How would you see the transition to centos9?<br>
<br></blockquote><div>What is the purpose of publishing images that are based on different OSes? I am genuinely curious. <br></div><div><br></div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
As i see it, we have three information that we need to encode:<br>
1. Purpose of the container: pulp, pulp-ci, pulp-molecule, ...<br>
2. Base OS: centos8, centos9 (eventually), fedora31, debian10, ...<br>
3. (Y-stream) Version of pulpcore involved: master, devel, latest, 3.2, ...<br>
[ 4. Build number of the image ]<br>
<br>
With respect to 4., I am unsure how much value there is to keep older<br>
builds lying around. Is that a common practice?<br>
<br></blockquote><div>Older images allow users to re-deploy the exact same thing that they had deployed somewhere else. <br></div><div></div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
I guess, we could skip "centos8" as the default value (but it should<br>
not hurt to tag the same image with the fully qualifying name anyway).<br>
<br>
The (harder) question is, which of these information should make up<br>
the (docker-/quay-)repository name and which encode the tag?<br>
e.g.<br>
  - The fedora and alpine repository have one tag for each<br>
(pre-)released version.<br>
  - Debian has tags for each version and again for the version with<br>
added '-slim' or '-backports'.<br>
  - Python uses python version with debian or alpine release as tags.<br>
      * [3.8.3-slim-buster, 3.8-slim-buster, 3-slim-buster,<br>
slim-buster, 3.8.3-slim, 3.8-slim, 3-slim, slim] all refer to the same<br>
container image.<br>
<br>
It seems quite common to have simple repository names and combine a<br>
lot of very different images with an elaborate tagging schema. Also<br>
certain images tend to have several tags.<br>
<br></blockquote><div>I agree that it is more common to include just a name in the repository name. Pulp is different from most applications because it ships a variable number of plugins. <br></div><div><br></div><div>We could create tags that include the name of all the plugins inside the container. So the user would be able to run a command such as</div><div><br></div><div>podman run pulp/pulp:3.3.1-ansible-container-file-maven-rpm</div><div> </div><div>or</div><div><br></div><div>podman run pulp/pulp:3.3.1-ansible0.2.0b12-container1.3.0-file0.3.0-maven0.1.0-rpm3.3.2 </div><div><br></div><div>This tag can get very long.<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
On Mon, May 18, 2020 at 2:46 PM Dennis Kliban <<a href="mailto:dkliban@redhat.com" target="_blank">dkliban@redhat.com</a>> wrote:<br>
><br>
> Long term, I would like to stop publishing container images based on Fedora. Images for production use should be built on top of CentOS 8 stream[0]. The name of the image repository should not contain the OS name.<br>
><br>
> Each 3.y release of pulpcore should live in its own repository called pulp/pulp-3-y. The initial release should be tagged as both 'latest' and '0'. Each time a compatible plugin is released, this image should be updated and the tag should be incremented by 1. The project website should contain a table that is automatically generated. The table should list what versions of plugins are included in each of the tags.<br>
><br>
> What do others think?<br>
><br>
> [0] <a href="https://pulp.plan.io/issues/6676" rel="noreferrer" target="_blank">https://pulp.plan.io/issues/6676</a><br>
><br>
><br>
> On Thu, May 14, 2020 at 12:54 PM Matthias Dellweg <<a href="mailto:mdellweg@redhat.com" target="_blank">mdellweg@redhat.com</a>> wrote:<br>
>><br>
>> We have recently started a new repository calles pulp-oci-images that<br>
>> should emit according to its name OCI compatible images with pulp<br>
>> installed.<br>
>> In the first go, this includes the single-container promoted though<br>
>> this blog post [0].<br>
>> Soon to be added is the base container image that shall speed up our CI [1].<br>
>> In the future, i envision a similar single-container solution based on<br>
>> centos instead of fedora,<br>
>> as well as ci base images based on centos having python3.6 installed.<br>
>> Does anyone think, we even need different ci-images for pulp release branches?<br>
>><br>
>> The big question now is: How are we going to name and tag those images?<br>
>><br>
>> The one from [0] is called "pulp/pulp-fedora31:latest".<br>
>> We could go with that and add names like:<br>
>> - "pulp/pulp-centos8:3.2"<br>
>>   installation of core version 3.2 with all compatible plugins on centos8<br>
>> - "pulp/pulp-ci-fedora32:latest"<br>
>> - "pulp/pulp-ci-centos8:latest"<br>
>><br>
>> BTW, the ci-base images can be built by using the same Conteinerfile<br>
>> interrupted early.<br>
>> (with --target in a multistage build)<br>
>><br>
>> What do you think?<br>
>><br>
>> [0] <a href="https://pulpproject.org/2020/03/15/pulp-fedora31-single-container/" rel="noreferrer" target="_blank">https://pulpproject.org/2020/03/15/pulp-fedora31-single-container/</a><br>
>> [1] <a href="https://github.com/pulp/pulpcore/blob/master/.travis/Containerfile.ci_base" rel="noreferrer" target="_blank">https://github.com/pulp/pulpcore/blob/master/.travis/Containerfile.ci_base</a><br>
>><br>
>> _______________________________________________<br>
>> Pulp-dev mailing list<br>
>> <a href="mailto:Pulp-dev@redhat.com" target="_blank">Pulp-dev@redhat.com</a><br>
>> <a href="https://www.redhat.com/mailman/listinfo/pulp-dev" rel="noreferrer" target="_blank">https://www.redhat.com/mailman/listinfo/pulp-dev</a><br>
>><br>
<br>
<br>
_______________________________________________<br>
Pulp-dev mailing list<br>
<a href="mailto:Pulp-dev@redhat.com" target="_blank">Pulp-dev@redhat.com</a><br>
<a href="https://www.redhat.com/mailman/listinfo/pulp-dev" rel="noreferrer" target="_blank">https://www.redhat.com/mailman/listinfo/pulp-dev</a><br>
<br>
</blockquote></div></div>