diff --git a/7.6.0/Dockerfile b/7.6.0/Dockerfile index eb0ebb4bd3dae51a6ffeb5529df249613d9dfbf5..bcd3dbf6fa1c10f11ef05607ad7dfe91b1cd4f37 100644 --- a/7.6.0/Dockerfile +++ b/7.6.0/Dockerfile @@ -8,23 +8,17 @@ ARG BASE_TAG=8.1 FROM ${BASE_REGISTRY}/${BASE_IMAGE}:${BASE_TAG} AS prep_files -ARG NEXUS_SCHEME=https -ARG NEXUS_USERNAME -ARG NEXUS_PASSWORD -ARG NEXUS_SERVER=nexus-secure.levelup-dev.io -ARG PACKAGE_NAME=kibana-7.6.0-linux-x86_64.tar.gz -ARG NEXUS_BASE=${NEXUS_SCHEME}://${NEXUS_SERVER}/repository/dsop/elastic/ - -ADD build-scripts/ /build-scripts/ - -RUN /build-scripts/prepare.sh $NEXUS_BASE/$PACKAGE_NAME $PACKAGE_NAME -RUN /build-scripts/prepare.sh $NEXUS_BASE/dumb-init dumb-init - RUN yum -y --nogpgcheck --disableplugin=subscription-manager update && yum install -y --nogpgcheck --disableplugin=subscription-manager tar gzip && yum clean all RUN mkdir /usr/share/kibana WORKDIR /usr/share/kibana -RUN tar zxf /opt/${PACKAGE_NAME} --strip-components=1 + +ARG TARBALL=kibana-7.6.0-linux-x86_64.tar.gz + +COPY ${TARBALL} /usr/share/kibana + +RUN tar -zxf ./${TARBALL} --strip-components=1 && rm -fv ./${TARBALL} + # Ensure that group permissions are the same as user permissions. # This will help when relying on GID-0 to run Kibana, rather than UID-1000. # OpenShift does this, for example. @@ -43,13 +37,14 @@ EXPOSE 5601 RUN yum -y --nogpgcheck --disableplugin=subscription-manager update && yum install -y --nogpgcheck --disableplugin=subscription-manager fontconfig freetype shadow-utils && yum clean all # Add a dumb init process -COPY --from=prep_files /opt/dumb-init /usr/local/bin/dumb-init +WORKDIR /usr/local/bin +COPY dumb-init /usr/local/bin/dumb-init RUN chmod +x /usr/local/bin/dumb-init # Bring in Kibana from the initial stage. -COPY --from=prep_files --chown=1000:0 /usr/share/kibana /usr/share/kibana WORKDIR /usr/share/kibana +COPY --from=prep_files --chown=1000:0 /usr/share/kibana /usr/share/kibana RUN ln -s /usr/share/kibana /opt/kibana ENV ELASTIC_CONTAINER true diff --git a/7.6.0/Jenkinsfile b/7.6.0/Jenkinsfile new file mode 100644 index 0000000000000000000000000000000000000000..1e590cb3f91d5676f4a7c584f7916875b4e2f2b9 --- /dev/null +++ b/7.6.0/Jenkinsfile @@ -0,0 +1,2 @@ +@Library('DCCSCR@master') _ +dccscrPipeline() diff --git a/7.6.0/build-scripts/prepare.sh b/7.6.0/build-scripts/prepare.sh deleted file mode 100755 index aeea338261a60382a1f8a5e9858110d509422ec6..0000000000000000000000000000000000000000 --- a/7.6.0/build-scripts/prepare.sh +++ /dev/null @@ -1,12 +0,0 @@ -#!/bin/bash -set -euo pipefail - -PACKAGE_URL=$1 -PACKAGE_NAME=$2 -WORKSPACE=${WORKSPACE:-/prepare} - -# Download dependencies -curl -fLku ${NEXUS_USERNAME}:${NEXUS_PASSWORD} --create-dirs ${PACKAGE_URL} -o ${WORKSPACE}/${PACKAGE_NAME} - -cp ${WORKSPACE}/${PACKAGE_NAME} /opt/${PACKAGE_NAME} - diff --git a/7.6.0/download.json b/7.6.0/download.json new file mode 100644 index 0000000000000000000000000000000000000000..9dae8c0ea71c3740cf768339397adc8a546549aa --- /dev/null +++ b/7.6.0/download.json @@ -0,0 +1,20 @@ +{ + "resources": [ + { + "url": "https://artifacts.elastic.co/downloads/kibana/kibana-7.6.0-linux-x86_64.tar.gz", + "filename": "kibana-7.6.0-linux-x86_64.tar.gz", + "validation": { + "type": "sha512", + "value": "296416b9697ae66b20aae37ada855d7212fc5151055a35cc81e7c3cfef589758f10f600b382e9f4b419fcd327ff605d8da23a25e867f6a1e4d3bd133e0317b72" + } + }, + { + "url": "https://github.com/Yelp/dumb-init/releases/download/v1.2.2/dumb-init_1.2.2_amd64", + "filename": "dumb-init", + "validation": { + "type": "sha256", + "value": "37f2c1f0372a45554f1b89924fbb134fc24c3756efaedf11e07f599494e0eff9" + } + } + ] +} diff --git a/7.6.0/scripts/prebuild.sh b/7.6.0/scripts/prebuild.sh deleted file mode 100755 index 222ae0478642a8ddc8ec3c41a8a479d2c70a7e86..0000000000000000000000000000000000000000 --- a/7.6.0/scripts/prebuild.sh +++ /dev/null @@ -1,58 +0,0 @@ -#!/bin/bash -set -e - -### Environment Variables ### -ELASTIC_PRODUCT=kibana -ELASTIC_VERSION=7.6.0 -ELASTIC_GPG_KEY_FINGERPRINT=46095ACC8548582C1A2699A9D27D666CD88E42B4 -PACKAGE_NAME=${ELASTIC_PRODUCT}-${ELASTIC_VERSION}-linux-x86_64.tar.gz - -VENDOR=elastic -CONTAINER=kibana -# These three variables are required to push whatever outside binaries your container needs at build time to our Nexus repo -NEXUS_SCHEME=${NEXUS_SCHEME:-https} -NEXUS_REPO=${NEXUS_SCHEME}://${NEXUS_SERVER}/repository/dsop/${VENDOR}/ -################################################################################# - -### Set & create paths ### -START_DIR=$(pwd) -STAGING_DIR="$(mktemp -d -t elastic_${ELASTIC_PRODUCT}.XXXXXXXXXX)" - -mkdir -p ${STAGING_DIR} -cd ${STAGING_DIR} - -### Download files/dependencies ### -#download an init process -curl -sL https://github.com/Yelp/dumb-init/releases/download/v1.2.2/dumb-init_1.2.2_amd64 -o dumb-init -echo "37f2c1f0372a45554f1b89924fbb134fc24c3756efaedf11e07f599494e0eff9 dumb-init" | sha256sum -c - - -echo "Downloading ${ELASTIC_PRODUCT}/${PACKAGE_NAME}" -curl -O https://artifacts.elastic.co/downloads/${ELASTIC_PRODUCT}/${PACKAGE_NAME} -curl -sO https://artifacts.elastic.co/downloads/${ELASTIC_PRODUCT}/${PACKAGE_NAME}.asc -curl -sO https://artifacts.elastic.co/downloads/${ELASTIC_PRODUCT}/${PACKAGE_NAME}.sha512 -sha512sum --check "${PACKAGE_NAME}.sha512" - -echo "Downloads Successful" - -### GPG Signature Check ### - -curl -sO https://artifacts.elastic.co/GPG-KEY-elasticsearch - -gpg --import GPG-KEY-elasticsearch - -gpg --verify "${PACKAGE_NAME}.asc" "$PACKAGE_NAME" - -if [ $? -eq 0 ] -then - echo "The key has the expected fingerprint." -else - echo "There is a Problem with signature." -fi - -### Nexus Repo Upload ### -for package in ${PACKAGE_NAME} dumb-init -do - curl -k -fu ${NEXUS_USERNAME}:${NEXUS_PASSWORD} -T ${package} ${NEXUS_REPO}/${package} - echo "${package} uploaded" -done -