-
Sub-task
-
Resolution: Done
-
Critical
-
2.9.0.GA
-
None
-
False
-
False
-
CRW-1648 - Support upstream plugin update automation in CRW
-
Undefined
-
With the latest changes in the crw plugin registry, the bootstrap process is broken:
18:48:22 ======= BOOTSTRAP DOCKERFILE =======> 18:48:22 + cat bootstrap.Dockerfile 18:48:22 # 18:48:22 # Copyright (c) 2018-2021 Red Hat, Inc. 18:48:22 # This program and the accompanying materials are made 18:48:22 # available under the terms of the Eclipse Public License 2.0 18:48:22 # which is available at https://www.eclipse.org/legal/epl-2.0/ 18:48:22 # 18:48:22 # SPDX-License-Identifier: EPL-2.0 18:48:22 # 18:48:22 # Contributors: 18:48:22 # Red Hat, Inc. - initial API and implementation 18:48:22 # 18:48:22 18:48:22 # Build registry 18:48:22 # UPSTREAM: use RHEL7/RHSCL/httpd image so we're not required to authenticate with registry.redhat.io 18:48:22 # https://access.redhat.com/containers/?tab=tags#/registry.access.redhat.com/rhscl/httpd-24-rhel7 18:48:22 #FROM rhscl/httpd-24-rhel7:2.4-143.1619800879 18:48:22 18:48:22 # DOWNSTREAM: use RHEL8/httpd 18:48:22 # https://access.redhat.com/containers/?tab=tags#/registry.access.redhat.com/rhel8/httpd-24 18:48:22 FROM registry-proxy.engineering.redhat.com/rh-osbs/rhel8-httpd-24:1-130.1618434979 AS registry 18:48:22 USER 0 18:48:22 # latest httpd container doesn't include ssl cert, so generate one 18:48:22 RUN chmod +x /usr/share/container-scripts/httpd/pre-init/40-ssl-certs.sh && \ 18:48:22 /usr/share/container-scripts/httpd/pre-init/40-ssl-certs.sh 18:48:22 RUN yum update -y systemd && yum clean all && rm -rf /var/cache/yum && \ 18:48:22 echo "Installed Packages" && rpm -qa | sort -V && echo "End Of Installed Packages" 18:48:22 18:48:22 # BEGIN these steps might not be required 18:48:22 RUN sed -i /etc/httpd/conf/httpd.conf \ 18:48:22 -e "s,Listen 80,Listen 8080," \ 18:48:22 -e "s,logs/error_log,/dev/stderr," \ 18:48:22 -e "s,logs/access_log,/dev/stdout," \ 18:48:22 -e "s,AllowOverride None,AllowOverride All," && \ 18:48:22 chmod a+rwX /etc/httpd/conf /run/httpd /etc/httpd/logs/ 18:48:22 STOPSIGNAL SIGWINCH 18:48:22 # END these steps might not be required 18:48:22 18:48:22 WORKDIR /var/www/html 18:48:22 18:48:22 RUN mkdir -m 777 /var/www/html/v3 18:48:22 COPY ./build/dockerfiles/rhel.entrypoint.sh ./build/dockerfiles/entrypoint.sh /usr/local/bin/ 18:48:22 RUN chmod g+rwX /usr/local/bin/entrypoint.sh /usr/local/bin/rhel.entrypoint.sh 18:48:22 COPY README.md .htaccess /var/www/html/ 18:48:22 COPY output/v3 /var/www/html/v3 18:48:22 COPY v3/plugins/.htaccess /var/www/html/v3/plugins/ 18:48:22 COPY v3/images/eclipse-che-logo.png /var/www/html/v3/images/ 18:48:22 18:48:22 ENTRYPOINT ["/usr/local/bin/entrypoint.sh"] 18:48:22 CMD ["/usr/local/bin/rhel.entrypoint.sh"] 18:48:22 18:48:22 # append Brew metadata here 18:48:22 ENV SUMMARY="Red Hat CodeReady Workspaces pluginregistry container" \ 18:48:22 DESCRIPTION="Red Hat CodeReady Workspaces pluginregistry container" \ 18:48:22 PRODNAME="codeready-workspaces" \ 18:48:22 COMPNAME="pluginregistry-rhel8" 18:48:22 LABEL summary="" \ 18:48:22 description="$DESCRIPTION" \ 18:48:22 io.k8s.description="$DESCRIPTION" \ 18:48:22 io.k8s.display-name="$DESCRIPTION" \ 18:48:22 io.openshift.tags="$PRODNAME,$COMPNAME" \ 18:48:22 com.redhat.component="$PRODNAME-$COMPNAME-container" \ 18:48:22 name="$PRODNAME/$COMPNAME" \ 18:48:22 version="2.9" \ 18:48:22 license="EPLv2" \ 18:48:22 maintainer="Eric Williams <ericwill@redhat.com>, Nick Boldt <nboldt@redhat.com>" \ 18:48:22 io.openshift.expose-services="" \ 18:48:22 usage="" 18:48:22 + echo '<======= BOOTSTRAP DOCKERFILE =======' 18:48:22 <======= BOOTSTRAP DOCKERFILE ======= 18:48:22 + echo '======= START BOOTSTRAP BUILD =======>' 18:48:22 ======= START BOOTSTRAP BUILD =======> 18:48:22 + docker build -t pluginregistry:tmp . --no-cache -f bootstrap.Dockerfile --target builder --build-arg BOOTSTRAP=true --build-arg USE_DIGESTS=false 18:48:22 Emulate Docker CLI using podman. Create /etc/containers/nodocker to quiet msg. 18:48:22 Error: The target "builder" was not found in the provided Dockerfile
– http://localhost:8080/job/CRW_CI/job/crw-sync-to-downstream_2.x/4/console
Instead of this --target builder --build-arg BOOTSTRAP=true set up, we should have something similar that will:
- collect pip dependencies so we can install yq
- collect vsix files so we can unpack them during offline brew build
- collect any other npm/yarn/golang dependencies we might need at build time