Description of problem: When building jbosseap/tomcat7/tomcat8 images, will meet "must specify a user that is numeric and within the range of allowed users", and the build will be failed. Version-Release number of selected component (if applicable): ce-registry.usersys.redhat.com/jboss-eap-6/eap-openshift 6.4-289 0849b9a8dc7c ce-registry.usersys.redhat.com/jboss-webserver-3/tomcat7-openshift 3.0-212 3316c7784794 ce-registry.usersys.redhat.com/jboss-webserver-3/tomcat8-openshift 3.0-215 7815e0e57281 How reproducible: always Steps to Reproduce: 1. Login to openshift server 2. Create jbosseap app secret and image stream 3. Create app using jbosseap template file, refer to json file: https://github.com/jboss-openshift/application-templates/blob/master/eap/eap6-basic-sti.json 4. Check the build logs oc get build oc build-logs eap-app-1 Actual results: the build was failed and get like below messages: <--------snip-----------> I0909 03:25:02.091917 1 docker.go:228] Pulling image registry.access.redhat.com/jboss-eap-6/eap-openshift:6.4 I0909 03:39:20.726362 1 sti.go:96] Creating a new S2I builder with build config: "Builder Image:\t\tregistry.access.redhat.com/jboss-eap-6/eap-openshift:6.4\nSource:\t\t\thttps://github.com/jboss-developer/jboss-eap-quickstarts\nSource Ref:\t\t6.4.x\nContext Directory:\tkitchensink\nOutput Image Tag:\t172.30.7.131:5000/32n23/eap-app:latest\nEnvironment:\t\tOPENSHIFT_BUILD_NAME=eap-app-1,OPENSHIFT_BUILD_NAMESPACE=32n23,OPENSHIFT_BUILD_SOURCE=https://github.com/jboss-developer/jboss-eap-quickstarts,OPENSHIFT_BUILD_REFERENCE=6.4.x\nIncremental Build:\tdisabled\nRemove Old Build:\tdisabled\nForce Pull:\t\tdisabled\nQuiet:\t\t\tdisabled\nLayered Build:\t\tdisabled\nDocker Endpoint:\tunix:///var/run/docker.sock\n" I0909 03:39:21.011897 1 docker.go:211] Image registry.access.redhat.com/jboss-eap-6/eap-openshift:6.4 available locally F0909 03:39:21.559192 1 builder.go:47] Build error: image "registry.access.redhat.com/jboss-eap-6/eap-openshift:6.4" must specify a user that is numeric and within the range of allowed users Expected results: The jbosseap/tomcat7/tomcat8 build should be successfully. Additional info: 1. It works well against Origin env 2. [root@openshift-138 ~]# docker inspect ce-registry.usersys.redhat.com/jboss-eap-6/eap-openshift:6.4-289 | grep User -A 3 -B 3 "ContainerConfig": { "Hostname": "", "Domainname": "", "User": "", "AttachStdin": false, "AttachStdout": false, "AttachStderr": false, -- "Config": { "Hostname": "", "Domainname": "", "User": "185", "AttachStdin": false, "AttachStdout": false, "AttachStderr": false,
Now, If your S2I image does not include a USER declaration with a numeric user, your builds will fail by default. Jboss image should adjust the user info according this rule. refer import part: https://github.com/csrwng/openshift-docs/blob/a6115ede4566e0b07979f4bbdda57e9159894b26/creating_images/guidelines.adoc#openshift-specific-guidelines
Verified jbosseap/tomcat7/tomacat8 images with below image id, no such issue now: jboss-eap-6/eap-openshift 5c93a30f18d0 jboss-webserver-3/tomcat7-openshift 1a6b324077cd jboss-webserver-3/tomcat8-openshift fc44453d1eca Have re-tested these images on OSE 3.0.2.
This fix is available in OpenShift Enterprise 3.1.