UNCLASSIFIED

Commit f0e786d8 authored by Matt Vasquez's avatar Matt Vasquez
Browse files

initial release

parent 138ab63d
Pipeline #18306 failed with stage
ARG BASE_REGISTRY=nexus-docker-secure.levelup-dev.io
ARG BASE_IMAGE=ubi8
ARG BASE_TAG=8.2
FROM jenkins/jenkins:2.237-centos as jenkins
FROM ${BASE_REGISTRY}/${BASE_IMAGE}:${BASE_TAG}
LABEL name="Jenkins" \
description="Jenkins Continuous Integration and Delivery server" \
vendor="Jenkins" \
summary="Jenkins 2.237" \
maintainer="Jenkins" \
version="2.237"
ENV JAVA_HOME /etc/alternatives/jre_openjdk
ARG user=jenkins
ARG group=jenkins
ARG uid=1000
ARG gid=1000
ARG http_port=8080
ARG agent_port=50000
ARG JENKINS_HOME=/var/jenkins_home
ARG REF=/usr/share/jenkins/ref
ENV JENKINS_HOME $JENKINS_HOME
ENV JENKINS_SLAVE_AGENT_PORT ${agent_port}
ENV REF $REF
COPY epel-release-latest-8.noarch.rpm /
# Jenkins is run with user `jenkins`, uid = 1000
# If you bind mount a volume from the host or a data container,
# ensure you use the same uid
RUN mkdir -p $JENKINS_HOME && \
chown ${uid}:${gid} $JENKINS_HOME && \
groupadd -g ${gid} ${group} && \
useradd -d "$JENKINS_HOME" -u ${uid} -g ${gid} -m -s /bin/bash ${user} && \
dnf update -y && \
dnf install -y /epel-release-latest-8.noarch.rpm && \
dnf install -y git java java-devel unzip && \
dnf install -y git-lfs && \
git lfs install && \
dnf remove -y epel-release && \
rm -rf /var/lib/apt/lists/* && \
dnf clean all && \
rm -rf /var/cache/dnf
# Jenkins home directory is a volume, so configuration and build history
# can be persisted and survive image upgrades
VOLUME $JENKINS_HOME
# $REF (defaults to `/usr/share/jenkins/ref/`) contains all reference configuration we want
# to set on a fresh new installation. Use it to bundle additional plugins
# or config file with your custom jenkins Docker image.
RUN mkdir -p ${REF}/init.groovy.d
COPY --from=jenkins /usr/share/jenkins/jenkins.war /usr/share/jenkins/jenkins.war
ENV JENKINS_UC https://updates.jenkins.io
ENV JENKINS_UC_EXPERIMENTAL=https://updates.jenkins.io/experimental
ENV JENKINS_INCREMENTALS_REPO_MIRROR=https://repo.jenkins-ci.org/incrementals
RUN chown -R ${user} "$JENKINS_HOME" "$REF"
# for main web interface:
EXPOSE ${http_port}
# will be used by attached slave agents:
EXPOSE ${agent_port}
ENV COPY_REFERENCE_FILE_LOG $JENKINS_HOME/copy_reference_file.log
USER ${user}
COPY --from=jenkins /usr/local/bin/jenkins-support /usr/local/bin/jenkins-support
COPY --from=jenkins /usr/local/bin/jenkins.sh /usr/local/bin/jenkins.sh
COPY --from=jenkins /bin/tini /bin/tini
COPY --from=jenkins /sbin/tini /sbin/tini
HEALTHCHECK --interval=10s --timeout=5s --start-period=1m --retries=5 CMD curl -I -f --max-time 5 http://localhost:${http_port} || exit 1
ENTRYPOINT ["/sbin/tini", "--", "/usr/local/bin/jenkins.sh"]
# from a derived Dockerfile, can use `RUN plugins.sh active.txt` to setup $REF/plugins from a support bundle
#COPY plugins.sh /usr/local/bin/plugins.sh
#COPY install-plugins.sh /usr/local/bin/install-plugins.sh
COPY --from=jenkins /usr/local/bin/plugins.sh /usr/local/bin/plugins.sh
COPY --from=jenkins /usr/local/bin/install-plugins.sh /usr/local/bin/install-plugins.sh
\ No newline at end of file
@Library('DCCSCR@master') _
dccscrPipeline( version: "2.237" )
\ No newline at end of file
The MIT License
Copyright (c) 2014-, Michael Neale, Nicolas de Loof, Carlos Sanchez, and a number of other of contributors
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.
\ No newline at end of file
# Official Jenkins Docker image
[![Docker Stars](https://img.shields.io/docker/stars/jenkins/jenkins.svg)](https://hub.docker.com/r/jenkins/jenkins/)
[![Docker Pulls](https://img.shields.io/docker/pulls/jenkins/jenkins.svg)](https://hub.docker.com/r/jenkins/jenkins/)
[![Join the chat at https://gitter.im/jenkinsci/docker](https://badges.gitter.im/jenkinsci/docker.svg)](https://gitter.im/jenkinsci/docker?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)
The Jenkins Continuous Integration and Delivery server [available on Docker Hub](https://hub.docker.com/r/jenkins/jenkins).
This is a fully functional Jenkins server.
[https://jenkins.io/](https://jenkins.io/).
<img src="https://jenkins.io/sites/default/files/jenkins_logo.png"/>
# Usage
```
docker run -p 8080:8080 -p 50000:50000 jenkins/jenkins:lts
```
NOTE: read below the _build executors_ part for the role of the `50000` port mapping.
This will store the workspace in /var/jenkins_home. All Jenkins data lives in there - including plugins and configuration.
You will probably want to make that an explicit volume so you can manage it and attach to another container for upgrades :
```
docker run -p 8080:8080 -p 50000:50000 -v jenkins_home:/var/jenkins_home jenkins/jenkins:lts
```
this will automatically create a 'jenkins_home' [docker volume](https://docs.docker.com/storage/volumes/) on the host machine, that will survive the container stop/restart/deletion.
NOTE: Avoid using a [bind mount](https://docs.docker.com/storage/bind-mounts/) from a folder on the host machine into `/var/jenkins_home`, as this might result in file permission issues (the user used inside the container might not have rights to the folder on the host machine). If you _really_ need to bind mount jenkins_home, ensure that the directory on the host is accessible by the jenkins user inside the container (jenkins user - uid 1000) or use `-u some_other_user` parameter with `docker run`.
```
docker run -d -v jenkins_home:/var/jenkins_home -p 8080:8080 -p 50000:50000 jenkins/jenkins:lts
```
this will run Jenkins in detached mode with port forwarding and volume added. You can access logs with command 'docker logs CONTAINER_ID' in order to check first login token. ID of container will be returned from output of command above.
## Backing up data
If you bind mount in a volume - you can simply back up that directory
(which is jenkins_home) at any time.
This is highly recommended. Treat the jenkins_home directory as you would a database - in Docker you would generally put a database on a volume.
If your volume is inside a container - you can use ```docker cp $ID:/var/jenkins_home``` command to extract the data, or other options to find where the volume data is.
Note that some symlinks on some OSes may be converted to copies (this can confuse jenkins with lastStableBuild links etc)
For more info check Docker docs section on [Managing data in containers](https://docs.docker.com/engine/tutorials/dockervolumes/)
# Setting the number of executors
You can specify and set the number of executors of your Jenkins master instance using a groovy script. By default its set to 2 executors, but you can extend the image and change it to your desired number of executors :
`executors.groovy`
```
import jenkins.model.*
Jenkins.instance.setNumExecutors(5)
```
and `Dockerfile`
```
FROM jenkins/jenkins:lts
COPY executors.groovy /usr/share/jenkins/ref/init.groovy.d/executors.groovy
```
# Attaching build executors
You can run builds on the master out of the box.
But if you want to attach build slave servers **through JNLP (Java Web Start)**: make sure you map the port: ```-p 50000:50000``` - which will be used when you connect a slave agent.
If you are only using [SSH slaves](https://wiki.jenkins-ci.org/display/JENKINS/SSH+Slaves+plugin), then you do **NOT** need to put that port mapping.
# Passing JVM parameters
You might need to customize the JVM running Jenkins, typically to pass system properties ([list of props](https://wiki.jenkins.io/display/JENKINS/Features+controlled+by+system+properties)) or tweak heap memory settings. Use JAVA_OPTS environment
variable for this purpose :
```
docker run --name myjenkins -p 8080:8080 -p 50000:50000 --env JAVA_OPTS=-Dhudson.footerURL=http://mycompany.com jenkins/jenkins:lts
```
# Configuring logging
Jenkins logging can be configured through a properties file and `java.util.logging.config.file` Java property.
For example:
```
mkdir data
cat > data/log.properties <<EOF
handlers=java.util.logging.ConsoleHandler
jenkins.level=FINEST
java.util.logging.ConsoleHandler.level=FINEST
EOF
docker run --name myjenkins -p 8080:8080 -p 50000:50000 --env JAVA_OPTS="-Djava.util.logging.config.file=/var/jenkins_home/log.properties" -v `pwd`/data:/var/jenkins_home jenkins/jenkins:lts
```
# Configuring reverse proxy
If you want to install Jenkins behind a reverse proxy with prefix, example: mysite.com/jenkins, you need to add environment variable `JENKINS_OPTS="--prefix=/jenkins"` and then follow the below procedures to configure your reverse proxy, which will depend if you have Apache or Nginx:
- [Apache](https://wiki.jenkins-ci.org/display/JENKINS/Running+Jenkins+behind+Apache)
- [Nginx](https://wiki.jenkins-ci.org/display/JENKINS/Jenkins+behind+an+NGinX+reverse+proxy)
# Passing Jenkins launcher parameters
Arguments you pass to docker running the Jenkins image are passed to jenkins launcher, so for example you can run:
```
docker run jenkins/jenkins:lts --version
```
This will show the Jenkins version, the same as when you run Jenkins from an executable war.
You can also define Jenkins arguments via `JENKINS_OPTS`. This is useful for customizing arguments to the jenkins
launcher in a derived Jenkins image. The following sample Dockerfile uses this option
to force use of HTTPS with a certificate included in the image.
```
FROM jenkins/jenkins:lts
COPY https.pem /var/lib/jenkins/cert
COPY https.key /var/lib/jenkins/pk
ENV JENKINS_OPTS --httpPort=-1 --httpsPort=8083 --httpsCertificate=/var/lib/jenkins/cert --httpsPrivateKey=/var/lib/jenkins/pk
EXPOSE 8083
```
You can also change the default slave agent port for jenkins by defining `JENKINS_SLAVE_AGENT_PORT` in a sample Dockerfile.
```
FROM jenkins/jenkins:lts
ENV JENKINS_SLAVE_AGENT_PORT 50001
```
or as a parameter to docker,
```
docker run --name myjenkins -p 8080:8080 -p 50001:50001 --env JENKINS_SLAVE_AGENT_PORT=50001 jenkins/jenkins:lts
```
**Note**: This environment variable will be used to set the port adding the
[system property][system-property] `jenkins.model.Jenkins.slaveAgentPort` to **JAVA_OPTS**.
> If this property is already set in **JAVA_OPTS**, then the value of
`JENKINS_SLAVE_AGENT_PORT` will be ignored.
# Installing more tools
You can run your container as root - and install via apt-get, install as part of build steps via jenkins tool installers, or you can create your own Dockerfile to customise, for example:
```
FROM jenkins/jenkins:lts
# if we want to install via apt
USER root
RUN apt-get update && apt-get install -y ruby make more-thing-here
# drop back to the regular jenkins user - good practice
USER jenkins
```
In such a derived image, you can customize your jenkins instance with hook scripts or additional plugins.
For this purpose, use `/usr/share/jenkins/ref` as a place to define the default JENKINS_HOME content you
wish the target installation to look like :
```
FROM jenkins/jenkins:lts
COPY custom.groovy /usr/share/jenkins/ref/init.groovy.d/custom.groovy
```
## Preinstalling plugins
You can rely on the `install-plugins.sh` script to pass a set of plugins to download with their dependencies.
This script will perform downloads from update centers, and internet access is required for the default update centers.
### Setting update centers
During the download, the script will use update centers defined by the following environment variables:
* `JENKINS_UC` - Main update center.
This update center may offer plugin versions depending on the Jenkins LTS Core versions.
Default value: https://updates.jenkins.io
* `JENKINS_UC_EXPERIMENTAL` - [Experimental Update Center](https://jenkins.io/blog/2013/09/23/experimental-plugins-update-center/).
This center offers Alpha and Beta versions of plugins.
Default value: https://updates.jenkins.io/experimental
* `JENKINS_INCREMENTALS_REPO_MIRROR` -
Defines Maven mirror to be used to download plugins from the
[Incrementals repo](https://jenkins.io/blog/2018/05/15/incremental-deployment/).
Default value: https://repo.jenkins-ci.org/incrementals
* `JENKINS_UC_DOWNLOAD` - Download url of the Update Center.
Default value: `$JENKINS_UC/download`
It is possible to override the environment variables in images.
:exclamation: Note that changing this variables **will not** change the Update Center being used by Jenkins runtime.
### Plugin version format
Use plugin artifact ID, without `-plugin` extension, and append the version if needed separated by `:`.
Dependencies that are already included in the Jenkins war will only be downloaded if their required version is newer than the one included.
There are also custom version specifiers:
* `latest` - download the latest version from the main update center.
For Jenkins LTS images
(example: `git:latest`)
* `experimental` - download the latest version from the experimental update center defined by the `JENKINS_UC_EXPERIMENTAL` environment variable (example: `filesystem_scm:experimental`)
* `incrementals;org.jenkins-ci.plugins.workflow;2.19-rc289.d09828a05a74[;githubUserId][;branchName]`
- download the plugin from the [Incrementals repo](https://jenkins.io/blog/2018/05/15/incremental-deployment/).
* For this option you need to specify `groupId` of the plugin.
Note that this value may change between plugin versions without notice.
* In order to automatically update Incrementals in plugins.txt, it is possible to use the Incrementals Maven Plugin:
`mvn incrementals:updatePluginsTxt -DpluginsFile=plugins.txt`.
[More Info](https://github.com/jenkinsci/incrementals-tools#updating-versions-for-jenkins-docker-images)
### Fine-tune the downloads
The script uses `curl` to download the plugins. You can configure the options with some environment variables:
* `CURL_OPTIONS`: When downloading the plugins with curl. Curl options. Default value: `-sSfL`
* `CURL_CONNECTION_TIMEOUT`: When downloading the plugins with curl. <seconds> Maximum time allowed for connection. Default value: `20`
* `CURL_RETRY`: When downloading the plugins with curl. Retry request if transient problems occur. Default value: `3`
* `CURL_RETRY_DELAY`: When downloading the plugins with curl. <seconds> Wait time between retries. Default value: `0`
* `CURL_RETRY_MAX_TIME`: When downloading the plugins with curl. <seconds> Retry only within this period. Default value: `60`
### Other environment variables
In case you have changed some default paths in the image, you can modify their values with these environment variables:
* `REF`: directory with preinstalled plugins. Default value: `/usr/share/jenkins/ref/plugins`
* `JENKINS_WAR`: full path to the jenkins.war. Default value: `/usr/share/jenkins/jenkins.war`
### Script usage
You can run the script manually in Dockerfile:
```Dockerfile
FROM jenkins/jenkins:lts
RUN /usr/local/bin/install-plugins.sh docker-slaves github-branch-source:1.8
```
Furthermore it is possible to pass a file that contains this set of plugins (with or without line breaks).
```Dockerfile
FROM jenkins/jenkins:lts
COPY plugins.txt /usr/share/jenkins/ref/plugins.txt
RUN /usr/local/bin/install-plugins.sh < /usr/share/jenkins/ref/plugins.txt
```
When jenkins container starts, it will check `JENKINS_HOME` has this reference content, and copy them
there if required. It will not override such files, so if you upgraded some plugins from UI they won't
be reverted on next start.
In case you *do* want to override, append '.override' to the name of the reference file. E.g. a file named
`/usr/share/jenkins/ref/config.xml.override` will overwrite an existing `config.xml` file in JENKINS_HOME.
Also see [JENKINS-24986](https://issues.jenkins-ci.org/browse/JENKINS-24986)
Here is an example to get the list of plugins from an existing server:
```
JENKINS_HOST=username:password@myhost.com:port
curl -sSL "http://$JENKINS_HOST/pluginManager/api/xml?depth=1&xpath=/*/*/shortName|/*/*/version&wrapper=plugins" | perl -pe 's/.*?<shortName>([\w-]+).*?<version>([^<]+)()(<\/\w+>)+/\1 \2\n/g'|sed 's/ /:/'
```
Example Output:
```
cucumber-testresult-plugin:0.8.2
pam-auth:1.1
matrix-project:1.4.1
script-security:1.13
...
```
For 2.x-derived images, you may also want to
RUN echo 2.0 > /usr/share/jenkins/ref/jenkins.install.UpgradeWizard.state
to indicate that this Jenkins installation is fully configured.
Otherwise a banner will appear prompting the user to install additional plugins,
which may be inappropriate.
# Upgrading
All the data needed is in the /var/jenkins_home directory - so depending on how you manage that - depends on how you upgrade. Generally - you can copy it out - and then "docker pull" the image again - and you will have the latest LTS - you can then start up with -v pointing to that data (/var/jenkins_home) and everything will be as you left it.
As always - please ensure that you know how to drive docker - especially volume handling!
## Upgrading plugins
By default, plugins will be upgraded if they haven't been upgraded manually and if the version from the docker image is newer than the version in the container. Versions installed by the docker image are tracked through a marker file.
To force upgrades of plugins that have been manually upgraded, run the docker image with `-e PLUGINS_FORCE_UPGRADE=true`.
The default behaviour when upgrading from a docker image that didn't write marker files is to leave existing plugins in place. If you want to upgrade existing plugins without marker you may run the docker image with `-e TRY_UPGRADE_IF_NO_MARKER=true`. Then plugins will be upgraded if the version provided by the docker image is newer.
## Hacking
If you wish to contribute fixes to this repository, please refer to the [dedicated documentation](HACKING.adoc).
# Questions?
Jump on irc.freenode.net and the #jenkins room. Ask!
[system-property]: https://wiki.jenkins.io/display/JENKINS/Features+controlled+by+system+properties
\ No newline at end of file
resources:
- url: "docker://docker.io/jenkins/jenkins@sha256:7cafb6b93b0276c1b70c8ce22152b89835a6c6169d8bfd91532d2553e9bc8fa0"
tag: "jenkins/jenkins:2.237-centos"
- url: "https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm"
filename: epel-release-latest-8.noarch.rpm
validation:
type: sha256
value: cbbe021f2de1e48687c45c4830b38e8e08895ef362d12d83c990d7b60a8d3528
\ No newline at end of file
  • Pipeline Status: FAILURE
    FAILURE Stage: Build
    Branch: jenkins-contrib

    graph LR
      0([setup]):::INTERNAL_SUCCESS --> 1([Import Artifacts]):::SUCCESS --> 2((/)):::INTERNAL_SUCCESS --> 3([Stage Artifacts]):::SUCCESS --> 4((/)):::INTERNAL_SUCCESS --> 5([Build]):::FAILURE --> 6([Publish, Scan & Report]):::INTERNAL_FAILURE
    
    classDef SUCCESS font-size:10px
    classDef FAILURE fill:#f44, font-size:10px
    classDef SKIPPED font-size:10px
    classDef ABORTED fill:#889, font-size:10px
    classDef INTERNAL_SUCCESS font-size:10px, stroke-dasharray: 2, 1
    classDef INTERNAL_FAILURE fill:#f44, font-size:10px, stroke-dasharray: 2, 1
    classDef INTERNAL_SKIPPED font-size:10px, stroke-dasharray: 2, 1
    classDef INTERNAL_ABORTED fill:#889, font-size:10px, stroke-dasharray: 2, 1
    

    Error Log:

    + buildah bud --tls-verify=false --format=docker --loglevel=3 --storage-driver=vfs --build-arg BASE_REGISTRY=**** --build-arg BASE_IMAGE=redhat/ubi/ubi7 --build-arg BASE_TAG=7.7 -t ****/opensource/jenkins/jenkins:2.237-testing --label dccscr.git.commit.id=f0e786d8e9d3f00a8e2801154fac0dbf62a7f765 --label dccscr.git.commit.url=https://dccscr.dsop.io/dsop/opensource/jenkins/jenkins/tree/f0e786d8e9d3f00a8e2801154fac0dbf62a7f765 --label dccscr.git.url=https://repo1.dsop.io/dsop/opensource/jenkins/jenkins.git --label dccscr.git.branch=jenkins-contrib --label dccscr.image.version=2.237 --label 'dccscr.image.build.date=Tue May 19 22:22:34 UTC 2020
    ' --label dccscr.image.build.id=1 --label dccscr.image.name=jenkins --label dccscr.ironbank.approval.status=pendingapproval --label dccscr.ironbank.approval.url=TBD --label dccscr.ironbank.url=TBD --label dcar_status=pendingapproval .
    STEP 1: FROM jenkins/jenkins:2.237-centos AS jenkins
    Getting image source signatures
    Copying blob sha256:0683de2821778aa9546bf3d3e6944df779daba1582631b7ea3517bb36f9e4007
    Copying blob sha256:41b8acb5a1a23b83c571cf95f0975dcae2d7270d6d61b8f8cb38aaa27478e430
    Copying blob sha256:6af139d034032d5e2c5d95ecec15a45423dd9f46e9d97481bea65e835a736b45
    Copying blob sha256:389d85bc256fdd77321c7d7485cb3659fa946f69709704e175ee1fe07404697e
    Copying blob sha256:3c8e540ab8d526a2f3ba27fdf25034bc28692fe6da2858325f15a408c28499e8
    Copying blob sha256:8f9ac8fbd6e95bd2980098b5ea367983111dbf18ad6fd5cccc317d2c78090e10
    Copying blob sha256:7228bee2b3889d52bcb4356bc73de53b8b89006621ca109df3a24b554e2861c0
    Copying blob sha256:4383779875851a5a477c39be713b01ff0500f8f223a15d40d77351d4df14b4ae
    Copying blob sha256:beeb5b90c07e003758e8d570b1371f0b855ddf6e0287a977454a7c7da867639c
    Copying blob sha256:d37356f686f005cbde9f7e3136ef7379514e235e058bb868ff0a27218fefdac5
    Copying blob sha256:3c58bf99f82f94914d40a8c977447a2fb32a1d8ad9edbd47c5da76cfc29377f9
    Copying blob sha256:a5a6d657bb0a41c77693fe18c9f31a94c41d433f1d9348867617100725836331
    Copying blob sha256:6d962349788db2b03617ea75fbe49f92f8710f2f98a1adbe6a9af05e45bb8098
    Copying config sha256:ad094e620cbcd97b5f1738eeb3b9059f0495c589aeaaf2869d75760542784657
    Writing manifest to image destination
    Storing signatures
    ad094e620cbcd97b5f1738eeb3b9059f0495c589aeaaf2869d75760542784657
    STEP 2: FROM ****/redhat/ubi/ubi7:7.7
    error creating build container: Error initializing source docker://****/redhat/ubi/ubi7:7.7: Error reading manifest 7.7 in ****/redhat/ubi/ubi7: manifest unknown: manifest unknown
    script returned exit code 1
  • Pipeline Status: FAILURE
    FAILURE Stage: Build
    Branch: jenkins-contrib

    graph LR
      0([setup]):::INTERNAL_SUCCESS --> 1([Import Artifacts]):::SUCCESS --> 2((/)):::INTERNAL_SUCCESS --> 3([Stage Artifacts]):::SUCCESS --> 4((/)):::INTERNAL_SUCCESS --> 5([Build]):::FAILURE --> 6([Publish, Scan & Report]):::INTERNAL_FAILURE
    
    classDef SUCCESS font-size:10px
    classDef FAILURE fill:#f44, font-size:10px
    classDef SKIPPED font-size:10px
    classDef ABORTED fill:#889, font-size:10px
    classDef INTERNAL_SUCCESS font-size:10px, stroke-dasharray: 2, 1
    classDef INTERNAL_FAILURE fill:#f44, font-size:10px, stroke-dasharray: 2, 1
    classDef INTERNAL_SKIPPED font-size:10px, stroke-dasharray: 2, 1
    classDef INTERNAL_ABORTED fill:#889, font-size:10px, stroke-dasharray: 2, 1
    

    Error Log:

    + buildah bud --tls-verify=false --format=docker --loglevel=3 --storage-driver=vfs --build-arg BASE_REGISTRY=**** --build-arg BASE_IMAGE=redhat/ubi/ubi8 --build-arg BASE_TAG=8.2 -t ****/opensource/jenkins/jenkins:2.237-testing --label dccscr.git.commit.id=f0e786d8e9d3f00a8e2801154fac0dbf62a7f765 --label dccscr.git.commit.url=https://dccscr.dsop.io/dsop/opensource/jenkins/jenkins/tree/f0e786d8e9d3f00a8e2801154fac0dbf62a7f765 --label dccscr.git.url=https://repo1.dsop.io/dsop/opensource/jenkins/jenkins.git --label dccscr.git.branch=jenkins-contrib --label dccscr.image.version=2.237 --label 'dccscr.image.build.date=Tue May 19 22:40:04 UTC 2020
    ' --label dccscr.image.build.id=2 --label dccscr.image.name=jenkins --label dccscr.ironbank.approval.status=notapproved --label dccscr.ironbank.approval.url=TBD --label dccscr.ironbank.url=TBD --label dcar_status=notapproved .
    STEP 1: FROM jenkins/jenkins:2.237-centos AS jenkins
    Getting image source signatures
    Copying blob sha256:0683de2821778aa9546bf3d3e6944df779daba1582631b7ea3517bb36f9e4007
    Copying blob sha256:41b8acb5a1a23b83c571cf95f0975dcae2d7270d6d61b8f8cb38aaa27478e430
    Copying blob sha256:6af139d034032d5e2c5d95ecec15a45423dd9f46e9d97481bea65e835a736b45
    Copying blob sha256:389d85bc256fdd77321c7d7485cb3659fa946f69709704e175ee1fe07404697e
    Copying blob sha256:3c8e540ab8d526a2f3ba27fdf25034bc28692fe6da2858325f15a408c28499e8
    Copying blob sha256:8f9ac8fbd6e95bd2980098b5ea367983111dbf18ad6fd5cccc317d2c78090e10
    Copying blob sha256:7228bee2b3889d52bcb4356bc73de53b8b89006621ca109df3a24b554e2861c0
    Copying blob sha256:4383779875851a5a477c39be713b01ff0500f8f223a15d40d77351d4df14b4ae
    Copying blob sha256:beeb5b90c07e003758e8d570b1371f0b855ddf6e0287a977454a7c7da867639c
    Copying blob sha256:d37356f686f005cbde9f7e3136ef7379514e235e058bb868ff0a27218fefdac5
    Copying blob sha256:3c58bf99f82f94914d40a8c977447a2fb32a1d8ad9edbd47c5da76cfc29377f9
    Copying blob sha256:a5a6d657bb0a41c77693fe18c9f31a94c41d433f1d9348867617100725836331
    Copying blob sha256:6d962349788db2b03617ea75fbe49f92f8710f2f98a1adbe6a9af05e45bb8098
    Copying config sha256:511325e4b46a29dafb8ba6bda923e44b880fcbd78231611b602de2ca86714b62
    Writing manifest to image destination
    Storing signatures
    511325e4b46a29dafb8ba6bda923e44b880fcbd78231611b602de2ca86714b62
    STEP 2: FROM ****/redhat/ubi/ubi8:8.2
    Getting image source signatures
    Copying blob sha256:4a39c427e210d2ce0804ab3114f85784c1bb222bb5f628c8294c176e6a8d7f44
    Copying blob sha256:ee24558b23953ed1f6e84c72098555192a62ed519ca79d8f51f2f0aa6d45ad70
    Copying blob sha256:55d7d883c4bbbfc5a858016001be5db347545e580eb90cb9234e32815adbf0e2
    Copying config sha256:68346666d0d4271675379593fbbfde2d20e0a5ca7dfc359de9cd0ead251ff002
    Writing manifest to image destination
    Storing signatures
    STEP 3: LABEL name="Jenkins"       description="Jenkins Continuous Integration and Delivery server"       vendor="Jenkins"       summary="Jenkins 2.237"       maintainer="Jenkins"       version="2.237"
    STEP 4: ENV JAVA_HOME /etc/alternatives/jre_openjdk
    STEP 5: ARG user=jenkins
    STEP 6: ARG group=jenkins
    STEP 7: ARG uid=1000
    STEP 8: ARG gid=1000
    STEP 9: ARG http_port=8080
    STEP 10: ARG agent_port=50000
    STEP 11: ARG JENKINS_HOME=/var/jenkins_home
    STEP 12: ARG REF=/usr/share/jenkins/ref
    STEP 13: ENV JENKINS_HOME $JENKINS_HOME
    STEP 14: ENV JENKINS_SLAVE_AGENT_PORT ${agent_port}
    STEP 15: ENV REF $REF
    STEP 16: COPY epel-release-latest-8.noarch.rpm /
    STEP 17: RUN mkdir -p $JENKINS_HOME &&     chown ${uid}:${gid} $JENKINS_HOME &&     groupadd -g ${gid} ${group} &&     useradd -d "$JENKINS_HOME" -u ${uid} -g ${gid} -m -s /bin/bash ${user} &&     dnf update -y &&     dnf install -y /epel-release-latest-8.noarch.rpm &&     dnf install -y git java java-devel unzip &&     dnf install -y git-lfs &&     git lfs install &&     dnf remove -y epel-release &&     rm -rf /var/lib/apt/lists/* &&     dnf clean all &&     rm -rf /var/cache/dnf
    useradd: warning: the home directory already exists.
    Not copying any file from skel directory into it.
    Red Hat Universal Base Image 8 (RPMs) - BaseOS   35 MB/s | 766 kB     00:00    
    Red Hat Universal Base Image 8 (RPMs) - AppStre  87 MB/s | 3.8 MB     00:00    
    Red Hat Universal Base Image 8 (RPMs) - CodeRea 555 kB/s | 9.1 kB     00:00    
    Dependencies resolved.
    Nothing to do.
    Complete!
    Last metadata expiration check: 0:00:01 ago on Tue May 19 22:40:27 2020.
    Dependencies resolved.
    ================================================================================
     Package              Architecture   Version         Repository            Size
    ================================================================================
    Installing:
     epel-release         noarch         8-8.el8         @commandline          22 k
    
    Transaction Summary
    ================================================================================
    Install  1 Package
    
    Total size: 22 k
    Installed size: 32 k
    Downloading Packages:
    warning: /epel-release-latest-8.noarch.rpm: Header V3 RSA/SHA256 Signature, key ID 2f86d6a1: NOKEY
    Public key for epel-release-latest-8.noarch.rpm is not installed
    Error: GPG check FAILED
    subprocess exited with status 1
    subprocess exited with status 1
    error building at STEP "RUN mkdir -p $JENKINS_HOME &&     chown ${uid}:${gid} $JENKINS_HOME &&     groupadd -g ${gid} ${group} &&     useradd -d "$JENKINS_HOME" -u ${uid} -g ${gid} -m -s /bin/bash ${user} &&     dnf update -y &&     dnf install -y /epel-release-latest-8.noarch.rpm &&     dnf install -y git java java-devel unzip &&     dnf install -y git-lfs &&     git lfs install &&     dnf remove -y epel-release &&     rm -rf /var/lib/apt/lists/* &&     dnf clean all &&     rm -rf /var/cache/dnf": exit status 1
    script returned exit code 1
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment