Bug 1782467

Summary: Remove EOL SCL images from Samples Operator
Product: OpenShift Container Platform Reporter: Siamak Sadeghianfar <ssadeghi>
Component: SamplesAssignee: Gabe Montero <gmontero>
Status: CLOSED ERRATA QA Contact: XiuJuan Wang <xiuwang>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 4.3.0CC: adam.kaplan
Target Milestone: ---   
Target Release: 4.4.0   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: Removed functionality
Doc Text:
Sample ImageStreamTags which pointed to images which have reached end of life status according to the image owners have been removed from the list of sample ImageStreams provided by OpenShift 4.4
Story Points: ---
Clone Of:
: 1794830 (view as bug list) Environment:
Last Closed: 2020-05-13 21:54:45 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 1788065, 1794830    

Description Siamak Sadeghianfar 2019-12-11 17:08:34 UTC
The follow images are EOL from the Software Collection and should be removed from the official library of the samples operator, not to get installed on new OpenShift clusters:
* devtoolset-7-perftools
* devtoolset-7-toolchain
* nginx-112 (phracek) (sclorg/nginx-container: Pull Request 99)
* nodejs-8 (phracek) (sclorg/s2i-nodejs-container: Pull Request 222)
* php-71 (phracek) sclorg/s2i-php-container: Pull Request 274
* mysql-57
* php-70 (phracek) sclorg/s2i-php-container: Pull Request 274
* perl-524
* redis-32

Comment 1 Gabe Montero 2019-12-11 18:44:24 UTC
Note, the following are not installed as part of ocp 4.x:
* devtoolset-7-perftools
* devtoolset-7-toolchain

Next, that are no upstream changes for deprecating mysql-57 nor redis-32.  Those will not be part of this bugzilla change.

Comment 2 Gabe Montero 2019-12-11 21:20:53 UTC
Also note, while SCL updated their template to reference version 5, they failed to update the imagestream to include version 5 ... see https://raw.githubusercontent.com/sclorg/redis-container/master/imagestreams/redis-rhel7.json
and 
https://raw.githubusercontent.com/sclorg/redis-container/master/examples/redis-ephemeral-template.json


their persistent template still points to 3.2

this will be exluded with this bug changes as well

@Siamak - can you loop back with the SCL folks who asked you about these deprecations and get them to fix it?

Comment 3 Gabe Montero 2019-12-12 16:29:04 UTC
Turns out SCL's cakephp templates still reference PHP 7.1

So we cannot accept those deprecations until the templates at https://github.com/sclorg/cakephp-ex/tree/master/openshift/templates are changed to reference 7.2

Siamak has initiated an email thread with the SCL folks.

Comment 5 XiuJuan Wang 2019-12-23 03:13:15 UTC
Add two comments in https://github.com/openshift/cluster-samples-operator/pull/209 , and php:7.0, php:7.1,nodejs:8 istags aren't removed.
Also redis imagestream only have 3.2,latest tag.

$ oc get  is php -n openshift  -o yaml 
apiVersion: image.openshift.io/v1
kind: ImageStream
metadata:
  annotations:
    openshift.io/display-name: PHP
    openshift.io/image.dockerRepositoryCheck: "2019-12-22T23:39:33Z"
    samples.operator.openshift.io/version: 4.4.0-0.nightly-2019-12-20-210709
  creationTimestamp: "2019-12-22T23:35:43Z"
  generation: 2
  labels:
    samples.operator.openshift.io/managed: "true"
  name: php
  namespace: openshift
  resourceVersion: "15485"
  selfLink: /apis/image.openshift.io/v1/namespaces/openshift/imagestreams/php
  uid: 04b0add9-f560-4a95-8817-74911fae1099
spec:
  lookupPolicy:
    local: false
  tags:
  - annotations:
      description: Build and run PHP 7.0 applications on RHEL 7. For more information
        about using this builder image, including OpenShift considerations, see https://github.com/sclorg/s2i-php-container/blob/master/7.0/README.md.
      iconClass: icon-php
      openshift.io/display-name: PHP 7.0
      openshift.io/provider-display-name: Red Hat, Inc.
      sampleRepo: https://github.com/sclorg/cakephp-ex.git
      supports: php:7.0,php
      tags: builder,php
      version: "7.0"
    from:
      kind: DockerImage
      name: registry.redhat.io/rhscl/php-70-rhel7:latest
    generation: 2
    importPolicy: {}
    name: "7.0"
    referencePolicy:
      type: Local
  - annotations:
      description: Build and run PHP 7.1 applications on RHEL 7. For more information
        about using this builder image, including OpenShift considerations, see https://github.com/sclorg/s2i-php-container/blob/master/7.1/README.md.
      iconClass: icon-php
      openshift.io/display-name: PHP 7.1
      openshift.io/provider-display-name: Red Hat, Inc.
      sampleRepo: https://github.com/sclorg/cakephp-ex.git
      supports: php:7.1,php
      tags: builder,php
      version: "7.1"
    from:
      kind: DockerImage
      name: registry.redhat.io/rhscl/php-71-rhel7:latest
    generation: 2
    importPolicy: {}
    name: "7.1"
    referencePolicy:
      type: Local
  - annotations:
      description: Build and run PHP 7.2 applications on RHEL 7. For more information
        about using this builder image, including OpenShift considerations, see https://github.com/sclorg/s2i-php-container/blob/master/7.2/README.md.
      iconClass: icon-php
      openshift.io/display-name: PHP 7.2
      openshift.io/provider-display-name: Red Hat, Inc.
      sampleRepo: https://github.com/sclorg/cakephp-ex.git
      supports: php:7.2,php
      tags: builder,php
      version: "7.2"
    from:
      kind: DockerImage
      name: registry.redhat.io/rhscl/php-72-rhel7:latest
    generation: 2
    importPolicy: {}
    name: "7.2"
    referencePolicy:
      type: Local
  - annotations:
      description: |-
        Build and run PHP applications on RHEL 7. For more information about using this builder image, including OpenShift considerations, see https://github.com/sclorg/s2i-php-container/blob/master/7.2/README.md.

        WARNING: By selecting this tag, your application will automatically update to use the latest version of PHP available on OpenShift, including major version updates.
      iconClass: icon-php
      openshift.io/display-name: PHP (Latest)
      openshift.io/provider-display-name: Red Hat, Inc.
      sampleRepo: https://github.com/sclorg/cakephp-ex.git
      supports: php
      tags: builder,php
    from:
      kind: ImageStreamTag
      name: "7.2"
    generation: 1
    importPolicy: {}
    name: latest
    referencePolicy:
      type: Local
status:
  dockerImageRepository: image-registry.openshift-image-registry.svc:5000/openshift/php
  publicDockerImageRepository: default-route-openshift-image-registry.apps.qe-groupd-1223.qe.devcluster.openshift.com/openshift/php
  tags:
  - items:
    - created: "2019-12-22T23:39:33Z"
      dockerImageReference: registry.redhat.io/rhscl/php-70-rhel7@sha256:5fe71824f8cd33e087a8345dae0d50d246d3032b179ccfbc21a2d2aaea24e2dc
      generation: 2
      image: sha256:5fe71824f8cd33e087a8345dae0d50d246d3032b179ccfbc21a2d2aaea24e2dc
    tag: "7.0"
  - items:
    - created: "2019-12-22T23:39:33Z"
      dockerImageReference: registry.redhat.io/rhscl/php-71-rhel7@sha256:289ef5852151a1a3ea4fdf2581a86a60ada0719e54a5ddd78f5252742e6d2b8d
      generation: 2
      image: sha256:289ef5852151a1a3ea4fdf2581a86a60ada0719e54a5ddd78f5252742e6d2b8d
    tag: "7.1"
  - items:
    - created: "2019-12-22T23:39:33Z"
      dockerImageReference: registry.redhat.io/rhscl/php-72-rhel7@sha256:763651a0418598074ecb76ba0d2f03affc1bf2680d2a05e2aef185b51c3471dd
      generation: 2
      image: sha256:763651a0418598074ecb76ba0d2f03affc1bf2680d2a05e2aef185b51c3471dd
    tag: "7.2"
  - items:
    - created: "2019-12-22T23:39:33Z"
      dockerImageReference: registry.redhat.io/rhscl/php-72-rhel7@sha256:763651a0418598074ecb76ba0d2f03affc1bf2680d2a05e2aef185b51c3471dd
      generation: 2
      image: sha256:763651a0418598074ecb76ba0d2f03affc1bf2680d2a05e2aef185b51c3471dd
    tag: latest

$oc get is  nodejs  -n openshift 
NAME     IMAGE REPOSITORY                                                                                          TAGS                         UPDATED
nodejs   default-route-openshift-image-registry.apps.qe-groupd-1223.qe.devcluster.openshift.com/openshift/nodejs   10,10-SCL,8,8-RHOAR,latest   4 hours ago

oc get is  redis  -n openshift 
NAME    IMAGE REPOSITORY                                                                                         TAGS         UPDATED
redis   default-route-openshift-image-registry.apps.qe-groupd-1223.qe.devcluster.openshift.com/openshift/redis   3.2,latest   4 hours ago

Comment 6 Gabe Montero 2020-01-02 18:06:00 UTC
See https://bugzilla.redhat.com/show_bug.cgi?id=1782467#c3 for why php was not updated .... that was expected 

See https://bugzilla.redhat.com/show_bug.cgi?id=1782467#c2 and https://bugzilla.redhat.com/show_bug.cgi?id=1782467#c1 for why redis was not updated .... that was expected 

nodejs 8 is odd .... I know see some discrepancies between 

https://github.com/openshift/library/blob/master/official.yaml

and 

https://github.com/sclorg/s2i-nodejs-container/pull/222/files

I will need to loop back with sclorg.

Comment 7 Gabe Montero 2020-01-02 18:37:59 UTC
Have https://github.com/openshift/library/pull/199 up to help sclorg fix this.

Assuming they agree and we merge that PR, we'll then need to update samples operator with the new openshift/library contents and see if e2e's pass.

Comment 8 Gabe Montero 2020-01-07 18:36:01 UTC
nodejs changes are now in https://github.com/openshift/cluster-samples-operator/pull/213

Comment 11 Gabe Montero 2020-01-08 01:09:49 UTC
OK the PHP stuff finally merged, but the nodejs stuff is still pending.

Comment 13 Gabe Montero 2020-01-08 16:44:24 UTC
@XiuJuan I've emailed SCL and included you to ask why they removed nginx 1.12 but left 1.10

Comment 19 Gabe Montero 2020-01-09 12:44:59 UTC
@XiuJuan - per email exchanges with SCL, removing nginx 12 but leaving 10 is intentional, given the atypical support lifecycles for them.

Comment 20 XiuJuan Wang 2020-01-10 02:26:04 UTC
@Gabe
Thank you,I found the details explain about removal nginx 12 in the email.

But there is still minor issue,
In https://github.com/sclorg/nginx-container/blob/master/imagestreams/nginx-rhel7.json#L16 , when it's a defination of nginx:1.14 tag, but display-name is 1.10
also in https://github.com/sclorg/nginx-container/blob/master/imagestreams/nginx-rhel7.json#L36 ,it's a defination of nginx:1.10 tag but point to 1.14

Comment 23 XiuJuan Wang 2020-01-17 06:22:52 UTC
Verified comment #21 with 4.4.0-0.nightly-2020-01-17-003449 payload.

Comment 25 errata-xmlrpc 2020-05-13 21:54:45 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://access.redhat.com/errata/RHBA-2020:0581