From c82a38446a0298998ee2800560498417221344f2 Mon Sep 17 00:00:00 2001 From: Christopger Vernooy Date: Thu, 27 Aug 2020 10:07:23 -0400 Subject: [PATCH 01/23] initial commit --- .gitignore | 1 + Dockerfile | 44 +++++++++ download.yaml | 177 ++++++++++++++++++++++++++++++++++++ files/bash.rc | 53 +++++++++++ files/requirements.txt | 37 ++++++++ scripts/download_pippkgs.sh | 55 +++++++++++ 6 files changed, 367 insertions(+) create mode 100644 .gitignore create mode 100644 Dockerfile create mode 100644 download.yaml create mode 100644 files/bash.rc create mode 100644 files/requirements.txt create mode 100755 scripts/download_pippkgs.sh diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..b3130b4 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +./pip_pkgs \ No newline at end of file diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..77e7503 --- /dev/null +++ b/Dockerfile @@ -0,0 +1,44 @@ +#create dev image +ARG BASE_REGISTRY=registry1.dsop.io +ARG BASE_IMAGE=ubi8 +ARG BASE_TAG=8.2 +FROM ${BASE_REGISTRY}/${BASE_IMAGE}:${BASE_TAG} as builder +RUN dnf -y install python3 python3-devel python3-pip gcc cmake make && \ + mkdir -p /run/systemd && \ + echo 'docker' > /run/systemd/container && \ + echo '#!/bin/sh' > /usr/sbin/policy-rc.d && \ + echo 'exit 101' >> /usr/sbin/policy-rc.d && \ + chmod +x /usr/sbin/policy-rc.d && \ + cp -af /usr/sbin/policy-rc.d /sbin/initctl && \ + sed -i 's/^exit.*/exit 0/' /sbin/initctl +RUN pip3 install --upgrade pip +RUN mkdir -p /root/pip_pkgs +COPY *.whl /root/pip_pkgs/ +RUN pip3 --disable-pip-version-check install /root/pip_pkgs/* +ENV LANG C.UTF-8 +##make final image +FROM ${BASE_REGISTRY}/${BASE_IMAGE}:${BASE_TAG} +LABEL org.opencontainers.image.title="tenserflow" \ + org.opencontainers.image.description="ternserflow 2.2.0 container based off UBI 8" \ + org.opencontainers.image.licenses="Apache-2.0" \ + org.opencontainers.image.url="https://hub.docker.com/layers/tensorflow/tensorflow/2.2.0/images/sha256-08901711826b185136886c7b8271b9fdbe86b8ccb598669781a1f5cb340184eb?context=explore" \ + org.opencontainers.image.version="2.2.0" \ + maintainer="cvernooy@oteemo.com" +ENV LANG C.UTF-8 +##systemd stuff aken from upstream public container history of the Ubuntu build, not sure if it's required here +RUN mkdir -p /run/systemd && \ + echo 'docker' > /run/systemd/container && \ + echo '#!/bin/sh' > /usr/sbin/policy-rc.d && \ + echo 'exit 101' >> /usr/sbin/policy-rc.d && \ + chmod +x /usr/sbin/policy-rc.d && \ + cp -af /usr/sbin/policy-rc.d /sbin/initctl && \ + sed -i 's/^exit.*/exit 0/' /sbin/initctl && \ + adduser tensorflow && \ + dnf upgrade -y && \ + dnf clean all && \ + rm -rf /var/cache/dnf +RUN find / -path /proc -prune -o -perm /4000 -exec chmod u-s {} \; +RUN find / -path /proc -prune -o -perm /2000 -exec chmod g-s {} \; +RUN rm -rf /root/pip_pkgs/ +COPY --from=builder /usr/lib/python3.6 /usr/lib/python3.6 +USER tenserflow \ No newline at end of file diff --git a/download.yaml b/download.yaml new file mode 100644 index 0000000..99ef10b --- /dev/null +++ b/download.yaml @@ -0,0 +1,177 @@ +--- +resources: + - url: "https://files.pythonhosted.org/packages/79/4c/7c3275a01e12ef9368a892926ab932b33bb13d55794881e3573482b378a7/Keras_Preprocessing-1.1.2-py2.py3-none-any.whl" + filename: "Keras_Preprocessing-1.1.2-py2.py3-none-any.whl" + validation: + type: "sha256" + value: "7b82029b130ff61cc99b55f3bd27427df4838576838c5b2f65940e4fcec99a7b" + - url: "https://files.pythonhosted.org/packages/a4/63/eaec2bd025ab48c754b55e8819af0f6a69e2b1e187611dd40cbbe101ee7f/Markdown-3.2.2-py3-none-any.whl" + filename: "Markdown-3.2.2-py3-none-any.whl" + validation: + type: "sha256" + value: "c467cd6233885534bf0fe96e62e3cf46cfc1605112356c4f9981512b8174de59" + - url: "https://files.pythonhosted.org/packages/cc/94/5f7079a0e00bd6863ef8f1da638721e9da21e5bacee597595b318f71d62e/Werkzeug-1.0.1-py2.py3-none-any.whl" + filename: "Werkzeug-1.0.1-py2.py3-none-any.whl" + validation: + type: "sha256" + value: "2de2a5db0baeae7b2d2664949077c2ac63fbd16d98da0ff71837f7d1dea3fd43" + - url: "https://files.pythonhosted.org/packages/b9/07/f69dd3367368ad69f174bfe426a973651412ec11d48ec05c000f19fe0561/absl_py-0.10.0-py3-none-any.whl" + filename: "absl_py-0.10.0-py3-none-any.whl" + validation: + type: "sha256" + value: "ea07d7d437798bffc14f39fccec3909d251a1e76e233205ded72b71c267e0178" + - url: "https://files.pythonhosted.org/packages/2b/03/13dde6512ad7b4557eb792fbcf0c653af6076b81e5941d36ec61f7ce6028/astunparse-1.6.3-py2.py3-none-any.whl" + filename: "astunparse-1.6.3-py2.py3-none-any.whl" + validation: + type: "sha256" + value: "c2652417f2c8b5bb325c885ae329bdf3f86424075c4fd1a128674bc6fba4b8e8" + - url: "https://files.pythonhosted.org/packages/cd/5c/f3aa86b6d5482f3051b433c7616668a9b96fbe49a622210e2c9781938a5c/cachetools-4.1.1-py3-none-any.whl" + filename: "cachetools-4.1.1-py3-none-any.whl" + validation: + type: "sha256" + value: "513d4ff98dd27f85743a8dc0e92f55ddb1b49e060c2d5961512855cda2c01a98" + - url: "https://files.pythonhosted.org/packages/5e/c4/6c4fe722df5343c33226f0b4e0bb042e4dc13483228b4718baf286f86d87/certifi-2020.6.20-py2.py3-none-any.whl" + filename: "certifi-2020.6.20-py2.py3-none-any.whl" + validation: + type: "sha256" + value: "8fc0819f1f30ba15bdb34cceffb9ef04d99f420f68eb75d901e9560b8749fc41" + - url: "https://files.pythonhosted.org/packages/bc/a9/01ffebfb562e4274b6487b4bb1ddec7ca55ec7510b22e4c51f14098443b8/chardet-3.0.4-py2.py3-none-any.whl" + filename: "chardet-3.0.4-py2.py3-none-any.whl" + validation: + type: "sha256" + value: "fc323ffcaeaed0e0a02bf4d117757b98aed530d9ed4531e3e15460124c106691" + - url: "https://files.pythonhosted.org/packages/d6/84/759f5dd23fec8ba71952d97bcc7e2c9d7d63bdc582421f3cd4be845f0c98/gast-0.3.3-py2.py3-none-any.whl" + filename: "gast-0.3.3-py2.py3-none-any.whl" + validation: + type: "sha256" + value: "8f46f5be57ae6889a4e16e2ca113b1703ef17f2b0abceb83793eaba9e1351a45" + - url: "https://files.pythonhosted.org/packages/0f/79/4c59796bb02535aee5e5d2e2c5e16008aaf48903c2ec2ff566a2774bb3e0/google_auth-1.20.1-py2.py3-none-any.whl" + filename: "google_auth-1.20.1-py2.py3-none-any.whl" + validation: + type: "sha256" + value: "ce1fb80b5c6d3dd038babcc43e221edeafefc72d983b3dc28b67b996f76f00b9" + - url: "https://files.pythonhosted.org/packages/7b/b8/88def36e74bee9fce511c9519571f4e485e890093ab7442284f4ffaef60b/google_auth_oauthlib-0.4.1-py2.py3-none-any.whl" + filename: "google_auth_oauthlib-0.4.1-py2.py3-none-any.whl" + validation: + type: "sha256" + value: "a92a0f6f41a0fb6138454fbc02674e64f89d82a244ea32f98471733c8ef0e0e1" + - url: "https://files.pythonhosted.org/packages/a3/de/c648ef6835192e6e2cc03f40b19eeda4382c49b5bafb43d88b931c4c74ac/google_pasta-0.2.0-py3-none-any.whl" + filename: "google_pasta-0.2.0-py3-none-any.whl" + validation: + type: "sha256" + value: "b32482794a366b5366a32c92a9a9201b107821889935a02b3e51f6b432ea84ed" + - url: "https://files.pythonhosted.org/packages/2f/48/5aae2b4f415cdab711ec9ec762f433b5d55184ec6e91afa3bc1092d1d0ab/grpcio-1.31.0-cp36-cp36m-manylinux2010_x86_64.whl" + filename: "grpcio-1.31.0-cp36-cp36m-manylinux2014_x86_64.whl" + validation: + type: "sha256" + value: "259240aab2603891553e17ad5b2655693df79e02a9b887ff605bdeb2fcd3dcc9" + - url: "https://files.pythonhosted.org/packages/60/06/cafdd44889200e5438b897388f3075b52a8ef01f28a17366d91de0fa2d05/h5py-2.10.0-cp36-cp36m-manylinux1_x86_64.whl" + filename: "h5py-2.10.0-cp36-cp36m-manylinux1_x86_64.whl" + validation: + type: "sha256" + value: "d3c59549f90a891691991c17f8e58c8544060fdf3ccdea267100fa5f561ff62f" + - url: "https://files.pythonhosted.org/packages/a2/38/928ddce2273eaa564f6f50de919327bf3a00f091b5baba8dfa9460f3a8a8/idna-2.10-py2.py3-none-any.whl" + filename: "idna-2.10-py2.py3-none-any.whl" + validation: + type: "sha256" + value: "b97d804b1e9b523befed77c48dacec60e6dcb0b5391d57af6a65a312a90648c0" + - url: "https://files.pythonhosted.org/packages/8e/58/cdea07eb51fc2b906db0968a94700866fc46249bdc75cac23f9d13168929/importlib_metadata-1.7.0-py2.py3-none-any.whl" + filename: "importlib_metadata-1.7.0-py2.py3-none-any.whl" + validation: + type: "sha256" + value: "dc15b2969b4ce36305c51eebe62d418ac7791e9a157911d58bfb1f9ccd8e2070" + - url: "https://files.pythonhosted.org/packages/22/e7/4b2bdddb99f5f631d8c1de259897c2b7d65dcfcc1e0a6fd17a7f62923500/numpy-1.19.1-cp36-cp36m-manylinux1_x86_64.whl" + filename: "numpy-1.19.1-cp36-cp36m-manylinux2010_x86_64.whl" + validation: + type: "sha256" + value: "cf1347450c0b7644ea142712619533553f02ef23f92f781312f6a3553d031fc7" + - url: "https://files.pythonhosted.org/packages/05/57/ce2e7a8fa7c0afb54a0581b14a65b56e62b5759dbc98e80627142b8a3704/oauthlib-3.1.0-py2.py3-none-any.whl" + filename: "oauthlib-3.1.0-py2.py3-none-any.whl" + validation: + type: "sha256" + value: "df884cd6cbe20e32633f1db1072e9356f53638e4361bef4e8b03c9127c9328ea" + - url: "https://files.pythonhosted.org/packages/bc/19/404708a7e54ad2798907210462fd950c3442ea51acc8790f3da48d2bee8b/opt_einsum-3.3.0-py3-none-any.whl" + filename: "opt_einsum-3.3.0-py3-none-any.whl" + validation: + type: "sha256" + value: "2455e59e3947d3c275477df7f5205b30635e266fe6dc300e3d9f9646bfcea147" + - url: "https://files.pythonhosted.org/packages/3b/ba/276d817d4b0184e544a9295e14e95f6148af5c5652033d30eb63d2c13bfa/protobuf-3.13.0-py2.py3-none-any.whl" + filename: "protobuf-3.13.0-py2.py3-none-any.whl" + validation: + type: "sha256" + value: "d69697acac76d9f250ab745b46c725edf3e98ac24763990b24d58c16c642947a" + - url: "https://files.pythonhosted.org/packages/62/1e/a94a8d635fa3ce4cfc7f506003548d0a2447ae76fd5ca53932970fe3053f/pyasn1-0.4.8-py2.py3-none-any.whl" + filename: "pyasn1-0.4.8-py2.py3-none-any.whl" + validation: + type: "sha256" + value: "39c7e2ec30515947ff4e87fb6f456dfc6e84857d34be479c9d4a4ba4bf46aa5d" + - url: "https://files.pythonhosted.org/packages/95/de/214830a981892a3e286c3794f41ae67a4495df1108c3da8a9f62159b9a9d/pyasn1_modules-0.2.8-py2.py3-none-any.whl" + filename: "pyasn1_modules-0.2.8-py2.py3-none-any.whl" + validation: + type: "sha256" + value: "a50b808ffeb97cb3601dd25981f6b016cbb3d31fbf57a8b8a87428e6158d0c74" + - url: "https://files.pythonhosted.org/packages/45/1e/0c169c6a5381e241ba7404532c16a21d86ab872c9bed8bdcd4c423954103/requests-2.24.0-py2.py3-none-any.whl" + filename: "requests-2.24.0-py2.py3-none-any.whl" + validation: + type: "sha256" + value: "fe75cc94a9443b9246fc7049224f75604b113c36acb93f87b80ed42c44cbb898" + - url: "https://files.pythonhosted.org/packages/a3/12/b92740d845ab62ea4edf04d2f4164d82532b5a0b03836d4d4e71c6f3d379/requests_oauthlib-1.3.0-py2.py3-none-any.whl" + filename: "requests_oauthlib-1.3.0-py2.py3-none-any.whl" + validation: + type: "sha256" + value: "7f71572defaecd16372f9006f33c2ec8c077c3cfa6f5911a9a90202beb513f3d" + - url: "https://files.pythonhosted.org/packages/1c/df/c3587a667d6b308fadc90b99e8bc8774788d033efcc70f4ecaae7fad144b/rsa-4.6-py3-none-any.whl" + filename: "rsa-4.6-py3-none-any.whl" + validation: + type: "sha256" + value: "6166864e23d6b5195a5cfed6cd9fed0fe774e226d8f854fcb23b7bbef0350233" + - url: "https://files.pythonhosted.org/packages/dc/29/162476fd44203116e7980cfbd9352eef9db37c49445d1fec35509022f6aa/scipy-1.4.1-cp36-cp36m-manylinux1_x86_64.whl" + filename: "scipy-1.4.1-cp36-cp36m-manylinux1_x86_64.whl" + validation: + type: "sha256" + value: "386086e2972ed2db17cebf88610aab7d7f6e2c0ca30042dc9a89cf18dcc363fa" + - url: "https://files.pythonhosted.org/packages/c3/a9/5dc32465951cf4812e9e93b4ad2d314893c2fa6d5f66ce5c057af6e76d85/setuptools-49.6.0-py3-none-any.whl" + filename: "setuptools-49.6.0-py3-none-any.whl" + validation: + type: "sha256" + value: "4dd5bb0a0a0cff77b46ca5dd3a84857ee48c83e8223886b556613c724994073f" + - url: "https://files.pythonhosted.org/packages/ee/ff/48bde5c0f013094d729fe4b0316ba2a24774b3ff1c52d924a8a4cb04078a/six-1.15.0-py2.py3-none-any.whl" + filename: "six-1.15.0-py2.py3-none-any.whl" + validation: + type: "sha256" + value: "8b74bedcbbbaca38ff6d7491d76f2b06b3592611af620f8426e82dddb04a5ced" + - url: "https://files.pythonhosted.org/packages/1d/74/0a6fcb206dcc72a6da9a62dd81784bfdbff5fedb099982861dc2219014fb/tensorboard-2.2.2-py3-none-any.whl" + filename: "tensorboard-2.2.2-py3-none-any.whl" + validation: + type: "sha256" + value: "a3feb73e1221c0a512398ad2cd08570fb082d8a2ba364aa0562543ecbd3659ef" + - url: "https://files.pythonhosted.org/packages/b6/85/5c5ac0a8c5efdfab916e9c6bc18963f6a6996a8a1e19ec4ad8c9ac9c623c/tensorboard_plugin_wit-1.7.0-py3-none-any.whl" + filename: "tensorboard_plugin_wit-1.7.0-py3-none-any.whl" + validation: + type: "sha256" + value: "ee775f04821185c90d9a0e9c56970ee43d7c41403beb6629385b39517129685b" + - url: "https://files.pythonhosted.org/packages/3d/be/679ce5254a8c8d07470efb4a4c00345fae91f766e64f1c2aece8796d7218/tensorflow-2.2.0-cp36-cp36m-manylinux2010_x86_64.whl" + filename: "tensorflow-2.2.0-cp36-cp36m-manylinux2010_x86_64.whl" + validation: + type: "sha256" + value: "dc5548562308acde7931f040e73d46ae31b398924cf675c3486fd3504e00a4af" + - url: "https://files.pythonhosted.org/packages/a4/f5/926ae53d6a226ec0fda5208e0e581cffed895ccc89e36ba76a8e60895b78/tensorflow_estimator-2.2.0-py2.py3-none-any.whl" + filename: "tensorflow_estimator-2.2.0-py2.py3-none-any.whl" + validation: + type: "sha256" + value: "d09dacdd127f2579cea8d5af21f4a918036b8ae246adc82f26b61f91cc247dc2" + - url: "https://files.pythonhosted.org/packages/9f/f0/a391d1463ebb1b233795cabfc0ef38d3db4442339de68f847026199e69d7/urllib3-1.25.10-py2.py3-none-any.whl" + filename: "urllib3-1.25.10-py2.py3-none-any.whl" + validation: + type: "sha256" + value: "e7983572181f5e1522d9c98453462384ee92a0be7fac5f1413a1e35c56cc0461" + - url: "https://files.pythonhosted.org/packages/a7/00/3df031b3ecd5444d572141321537080b40c1c25e1caa3d86cdd12e5e919c/wheel-0.35.1-py2.py3-none-any.whl" + filename: "wheel-0.35.1-py2.py3-none-any.whl" + validation: + type: "sha256" + value: "497add53525d16c173c2c1c733b8f655510e909ea78cc0e29d374243544b77a2" + - url: "https://files.pythonhosted.org/packages/b2/34/bfcb43cc0ba81f527bc4f40ef41ba2ff4080e047acb0586b56b3d017ace4/zipp-3.1.0-py3-none-any.whl" + filename: "zipp-3.1.0-py3-none-any.whl" + validation: + type: "sha256" + value: "aa36550ff0c0b7ef7fa639055d797116ee891440eac1a56f378e2d3179e0320b" diff --git a/files/bash.rc b/files/bash.rc new file mode 100644 index 0000000..643289e --- /dev/null +++ b/files/bash.rc @@ -0,0 +1,53 @@ +# Copyright 2018 The TensorFlow Authors. All Rights Reserved. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +# ============================================================================== + +# If not running interactively, don't do anything +[ -z "$PS1" ] && return + +export PS1="\[\e[31m\]tf-docker\[\e[m\] \[\e[33m\]\w\[\e[m\] > " +export TERM=xterm-256color +alias grep="grep --color=auto" +alias ls="ls --color=auto" + +echo -e "\e[1;31m" +cat< download.yaml +fi +for p in ${raw_pkglist[@]}; do + dl_link='' + pkg=$(echo $p | cut -d '=' -f 1) + mod_pkg=$(echo $pkg | tr '-' '_') + version=$(echo $p | cut -d '=' -f 3) + link_data=$(curl -sL https://pypi.org/simple/$pkg/ | grep -i "$pkg-$version-py2.py3-none-any.whl" | cut -d '=' -f 2,3 | cut -d '<' -f 1 | cut -d '>' -f 1) + if [[ $link_data == '' ]]; then + link_data=$(curl -sL https://pypi.org/simple/$pkg/ | grep -i "$mod_pkg-$version-py2.py3-none-any.whl" | cut -d '=' -f 2,3 | cut -d '<' -f 1 | cut -d '>' -f 1) + fi + if [[ $link_data == '' ]]; then + link_data=$(curl -sL https://pypi.org/simple/$pkg/ | grep -i "$pkg-$version-py3-none-any.whl" | cut -d '=' -f 2,3 | cut -d '<' -f 1 | cut -d '>' -f 1) + fi + if [[ $link_data == '' ]]; then + link_data=$(curl -sL https://pypi.org/simple/$pkg/ | grep -i "$mod_pkg-$version-py3-none-any.whl" | cut -d '=' -f 2,3 | cut -d '<' -f 1 | cut -d '>' -f 1) + fi + if [[ $link_data == '' ]]; then + link_data=$(curl -sL https://pypi.org/simple/$pkg/ | egrep -i "$pkg-$version-cp36-cp36m-manylinux(.*)_x86_64.whl" | cut -d '=' -f 2,3 | cut -d '<' -f 1 | cut -d '>' -f 1) + fi + if [[ $link_data == '' ]]; then + link_data=$(curl -sL https://pypi.org/simple/$pkg/ | egrep -i "$mod_pkg-$version-cp36-cp36m-manylinux(.*)_x86_64.whl" | cut -d '=' -f 2,3 | cut -d '<' -f 1 | cut -d '>' -f 1) + fi + if [[ $link_data == '' ]]; then + link_data=$(curl -sL https://pypi.org/simple/$pkg/ | grep -i "$pkg-$version.tar.gz" | cut -d '=' -f 2,3 | cut -d '<' -f 1 | cut -d '>' -f 1) + fi + if [[ $link_data == '' ]]; then + link_data=$(curl -sL https://pypi.org/simple/$pkg/ | grep -i "$mod_pkg-$version.tar.gz" | cut -d '=' -f 2,3 | cut -d '<' -f 1 | cut -d '>' -f 1) + fi + if [[ $link_data == '' ]]; then + link_data=$(curl -sL https://pypi.org/simple/$pkg/ | grep -i "$pkg-$version.zip" | cut -d '=' -f 2,3 | cut -d '<' -f 1 | cut -d '>' -f 1) + fi + if [[ $link_data == '' ]]; then + link_data=$(curl -sL https://pypi.org/simple/$pkg/ | grep -i "$mod_pkg-$version.zip" | cut -d '=' -f 2,3 | cut -d '<' -f 1 | cut -d '>' -f 1) + fi + #if not found you will have to add the package details to the download.yaml file maanually + dl_link=$link_data + if [[ $dl_link != '' ]]; then + # TESTING: + #dl_link=$(echo $dl_link | cut -d '#' -f 1 | cut -d '"' -f 2) + #shasum=$(echo $dl_link | cut -d '=' -f 2 | cut -d ' ' -f 1) + echo "writing information to download.yaml for $pkg==$version" + echo -e " - url: \"$(echo $dl_link | cut -d '#' -f 1 | cut -d '"' -f 2)\"\r\n filename: \"$(echo $dl_link | rev | cut -d '/' -f 1 | rev | cut -d '#' -f 1 | cut -d '"' -f 2)\"\r\n validation:\r\n type: \"sha256\"\r\n value: \"$(echo $dl_link | cut -d '=' -f 2 | cut -d ' ' -f 1)" >> download.yaml + wget $(echo $dl_link | cut -d '#' -f 1 | cut -d '"' -f 2) -O pip_pkgs/$(echo $dl_link | rev | cut -d '/' -f 1 | rev | cut -d '#' -f 1 | cut -d '"' -f 2) + else + echo "$pkg-$version: cannot match download package string" + echo $link_data + fi +done -- GitLab From 8492f52b7638e5bd5e5ff06f12eca0dd263cc4c6 Mon Sep 17 00:00:00 2001 From: Christopger Vernooy Date: Thu, 27 Aug 2020 10:14:16 -0400 Subject: [PATCH 02/23] jenkinsfile --- Jenkinsfile | 2 ++ 1 file changed, 2 insertions(+) create mode 100644 Jenkinsfile diff --git a/Jenkinsfile b/Jenkinsfile new file mode 100644 index 0000000..9e40e75 --- /dev/null +++ b/Jenkinsfile @@ -0,0 +1,2 @@ +@Library('DCCSCR@master') _ +dccscrPipeline(version: '2.2.0') -- GitLab From db8f975acb485488b1de802d81526819d1943e8c Mon Sep 17 00:00:00 2001 From: Christopger Vernooy Date: Thu, 27 Aug 2020 10:19:44 -0400 Subject: [PATCH 03/23] updated readme --- README.md | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/README.md b/README.md index e18255b..b1506ef 100644 --- a/README.md +++ b/README.md @@ -1,2 +1,6 @@ # tensorflow-2.2.0 +This is a hardened version of the upstream tensorflow/tensorflow:2.2.0 image. This is NOT meant to be deployed as is, rather imported and usesd as a base container. An example of some containers that will rely on this are the jupyter notebook containers as well as some others for the Kubeflow deployment. + +No chart or deployment instructions will be made available for this image unless there is a need to deploy this container as-is + -- GitLab From 3fa6c2d4d64eb425810f0649ef08ba62357be6e1 Mon Sep 17 00:00:00 2001 From: Christopger Vernooy Date: Thu, 27 Aug 2020 11:44:04 -0400 Subject: [PATCH 04/23] changes for build failures --- .gitignore | 3 +- Dockerfile | 2 ++ download.yaml | 82 +++++++++++++++++++++++++++++---------------------- 3 files changed, 50 insertions(+), 37 deletions(-) diff --git a/.gitignore b/.gitignore index b3130b4..a9ddbe1 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1,2 @@ -./pip_pkgs \ No newline at end of file +./pip_pkgs +download_script.log \ No newline at end of file diff --git a/Dockerfile b/Dockerfile index 77e7503..e9f891e 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,5 +1,6 @@ #create dev image ARG BASE_REGISTRY=registry1.dsop.io +#ARG BASE_REGISTRY=registry.access.redhat.com ARG BASE_IMAGE=ubi8 ARG BASE_TAG=8.2 FROM ${BASE_REGISTRY}/${BASE_IMAGE}:${BASE_TAG} as builder @@ -13,6 +14,7 @@ RUN dnf -y install python3 python3-devel python3-pip gcc cmake make && \ sed -i 's/^exit.*/exit 0/' /sbin/initctl RUN pip3 install --upgrade pip RUN mkdir -p /root/pip_pkgs +#COPY pip_pkgs/*.whl /root/pip_pkgs/ COPY *.whl /root/pip_pkgs/ RUN pip3 --disable-pip-version-check install /root/pip_pkgs/* ENV LANG C.UTF-8 diff --git a/download.yaml b/download.yaml index 99ef10b..f373801 100644 --- a/download.yaml +++ b/download.yaml @@ -1,177 +1,187 @@ --- -resources: +resources: + - url: "https://files.pythonhosted.org/packages/8a/48/a76be51647d0eb9f10e2a4511bf3ffb8cc1e6b14e9e4fab46173aa79f981/termcolor-1.1.0.tar.gz" + filename: "termcolor-1.1.0.tar.gz" + validation: + type: "sha256" + value: "1d6d69ce66211143803fbc56652b41d73b4a400a2891d7bf7a1cdf4c02de613b" + - url: "https://files.pythonhosted.org/packages/82/f7/e43cefbe88c5fd371f4cf0cf5eb3feccd07515af9fd6cf7dbf1d1793a797/wrapt-1.12.1.tar.gz" + filename: "wrapt-1.12.1.tar.gz" + validation: + type: "sha256" + value: "b62ffa81fb85f4332a4f609cab4ac40709470da05643a082ec1eb88e6d9b97d7" - url: "https://files.pythonhosted.org/packages/79/4c/7c3275a01e12ef9368a892926ab932b33bb13d55794881e3573482b378a7/Keras_Preprocessing-1.1.2-py2.py3-none-any.whl" filename: "Keras_Preprocessing-1.1.2-py2.py3-none-any.whl" validation: type: "sha256" - value: "7b82029b130ff61cc99b55f3bd27427df4838576838c5b2f65940e4fcec99a7b" + value: "7b82029b130ff61cc99b55f3bd27427df4838576838c5b2f65940e4fcec99a7b" - url: "https://files.pythonhosted.org/packages/a4/63/eaec2bd025ab48c754b55e8819af0f6a69e2b1e187611dd40cbbe101ee7f/Markdown-3.2.2-py3-none-any.whl" filename: "Markdown-3.2.2-py3-none-any.whl" validation: type: "sha256" - value: "c467cd6233885534bf0fe96e62e3cf46cfc1605112356c4f9981512b8174de59" + value: "c467cd6233885534bf0fe96e62e3cf46cfc1605112356c4f9981512b8174de59" - url: "https://files.pythonhosted.org/packages/cc/94/5f7079a0e00bd6863ef8f1da638721e9da21e5bacee597595b318f71d62e/Werkzeug-1.0.1-py2.py3-none-any.whl" filename: "Werkzeug-1.0.1-py2.py3-none-any.whl" validation: type: "sha256" - value: "2de2a5db0baeae7b2d2664949077c2ac63fbd16d98da0ff71837f7d1dea3fd43" + value: "2de2a5db0baeae7b2d2664949077c2ac63fbd16d98da0ff71837f7d1dea3fd43" - url: "https://files.pythonhosted.org/packages/b9/07/f69dd3367368ad69f174bfe426a973651412ec11d48ec05c000f19fe0561/absl_py-0.10.0-py3-none-any.whl" filename: "absl_py-0.10.0-py3-none-any.whl" validation: type: "sha256" - value: "ea07d7d437798bffc14f39fccec3909d251a1e76e233205ded72b71c267e0178" + value: "ea07d7d437798bffc14f39fccec3909d251a1e76e233205ded72b71c267e0178" - url: "https://files.pythonhosted.org/packages/2b/03/13dde6512ad7b4557eb792fbcf0c653af6076b81e5941d36ec61f7ce6028/astunparse-1.6.3-py2.py3-none-any.whl" filename: "astunparse-1.6.3-py2.py3-none-any.whl" validation: type: "sha256" - value: "c2652417f2c8b5bb325c885ae329bdf3f86424075c4fd1a128674bc6fba4b8e8" + value: "c2652417f2c8b5bb325c885ae329bdf3f86424075c4fd1a128674bc6fba4b8e8" - url: "https://files.pythonhosted.org/packages/cd/5c/f3aa86b6d5482f3051b433c7616668a9b96fbe49a622210e2c9781938a5c/cachetools-4.1.1-py3-none-any.whl" filename: "cachetools-4.1.1-py3-none-any.whl" validation: type: "sha256" - value: "513d4ff98dd27f85743a8dc0e92f55ddb1b49e060c2d5961512855cda2c01a98" + value: "513d4ff98dd27f85743a8dc0e92f55ddb1b49e060c2d5961512855cda2c01a98" - url: "https://files.pythonhosted.org/packages/5e/c4/6c4fe722df5343c33226f0b4e0bb042e4dc13483228b4718baf286f86d87/certifi-2020.6.20-py2.py3-none-any.whl" filename: "certifi-2020.6.20-py2.py3-none-any.whl" validation: type: "sha256" - value: "8fc0819f1f30ba15bdb34cceffb9ef04d99f420f68eb75d901e9560b8749fc41" + value: "8fc0819f1f30ba15bdb34cceffb9ef04d99f420f68eb75d901e9560b8749fc41" - url: "https://files.pythonhosted.org/packages/bc/a9/01ffebfb562e4274b6487b4bb1ddec7ca55ec7510b22e4c51f14098443b8/chardet-3.0.4-py2.py3-none-any.whl" filename: "chardet-3.0.4-py2.py3-none-any.whl" validation: type: "sha256" - value: "fc323ffcaeaed0e0a02bf4d117757b98aed530d9ed4531e3e15460124c106691" + value: "fc323ffcaeaed0e0a02bf4d117757b98aed530d9ed4531e3e15460124c106691" - url: "https://files.pythonhosted.org/packages/d6/84/759f5dd23fec8ba71952d97bcc7e2c9d7d63bdc582421f3cd4be845f0c98/gast-0.3.3-py2.py3-none-any.whl" filename: "gast-0.3.3-py2.py3-none-any.whl" validation: type: "sha256" - value: "8f46f5be57ae6889a4e16e2ca113b1703ef17f2b0abceb83793eaba9e1351a45" + value: "8f46f5be57ae6889a4e16e2ca113b1703ef17f2b0abceb83793eaba9e1351a45" - url: "https://files.pythonhosted.org/packages/0f/79/4c59796bb02535aee5e5d2e2c5e16008aaf48903c2ec2ff566a2774bb3e0/google_auth-1.20.1-py2.py3-none-any.whl" filename: "google_auth-1.20.1-py2.py3-none-any.whl" validation: type: "sha256" - value: "ce1fb80b5c6d3dd038babcc43e221edeafefc72d983b3dc28b67b996f76f00b9" + value: "ce1fb80b5c6d3dd038babcc43e221edeafefc72d983b3dc28b67b996f76f00b9" - url: "https://files.pythonhosted.org/packages/7b/b8/88def36e74bee9fce511c9519571f4e485e890093ab7442284f4ffaef60b/google_auth_oauthlib-0.4.1-py2.py3-none-any.whl" filename: "google_auth_oauthlib-0.4.1-py2.py3-none-any.whl" validation: type: "sha256" - value: "a92a0f6f41a0fb6138454fbc02674e64f89d82a244ea32f98471733c8ef0e0e1" + value: "a92a0f6f41a0fb6138454fbc02674e64f89d82a244ea32f98471733c8ef0e0e1" - url: "https://files.pythonhosted.org/packages/a3/de/c648ef6835192e6e2cc03f40b19eeda4382c49b5bafb43d88b931c4c74ac/google_pasta-0.2.0-py3-none-any.whl" filename: "google_pasta-0.2.0-py3-none-any.whl" validation: type: "sha256" - value: "b32482794a366b5366a32c92a9a9201b107821889935a02b3e51f6b432ea84ed" + value: "b32482794a366b5366a32c92a9a9201b107821889935a02b3e51f6b432ea84ed" - url: "https://files.pythonhosted.org/packages/2f/48/5aae2b4f415cdab711ec9ec762f433b5d55184ec6e91afa3bc1092d1d0ab/grpcio-1.31.0-cp36-cp36m-manylinux2010_x86_64.whl" filename: "grpcio-1.31.0-cp36-cp36m-manylinux2014_x86_64.whl" validation: type: "sha256" - value: "259240aab2603891553e17ad5b2655693df79e02a9b887ff605bdeb2fcd3dcc9" + value: "259240aab2603891553e17ad5b2655693df79e02a9b887ff605bdeb2fcd3dcc9" - url: "https://files.pythonhosted.org/packages/60/06/cafdd44889200e5438b897388f3075b52a8ef01f28a17366d91de0fa2d05/h5py-2.10.0-cp36-cp36m-manylinux1_x86_64.whl" filename: "h5py-2.10.0-cp36-cp36m-manylinux1_x86_64.whl" validation: type: "sha256" - value: "d3c59549f90a891691991c17f8e58c8544060fdf3ccdea267100fa5f561ff62f" + value: "d3c59549f90a891691991c17f8e58c8544060fdf3ccdea267100fa5f561ff62f" - url: "https://files.pythonhosted.org/packages/a2/38/928ddce2273eaa564f6f50de919327bf3a00f091b5baba8dfa9460f3a8a8/idna-2.10-py2.py3-none-any.whl" filename: "idna-2.10-py2.py3-none-any.whl" validation: type: "sha256" - value: "b97d804b1e9b523befed77c48dacec60e6dcb0b5391d57af6a65a312a90648c0" + value: "b97d804b1e9b523befed77c48dacec60e6dcb0b5391d57af6a65a312a90648c0" - url: "https://files.pythonhosted.org/packages/8e/58/cdea07eb51fc2b906db0968a94700866fc46249bdc75cac23f9d13168929/importlib_metadata-1.7.0-py2.py3-none-any.whl" filename: "importlib_metadata-1.7.0-py2.py3-none-any.whl" validation: type: "sha256" - value: "dc15b2969b4ce36305c51eebe62d418ac7791e9a157911d58bfb1f9ccd8e2070" + value: "dc15b2969b4ce36305c51eebe62d418ac7791e9a157911d58bfb1f9ccd8e2070" - url: "https://files.pythonhosted.org/packages/22/e7/4b2bdddb99f5f631d8c1de259897c2b7d65dcfcc1e0a6fd17a7f62923500/numpy-1.19.1-cp36-cp36m-manylinux1_x86_64.whl" filename: "numpy-1.19.1-cp36-cp36m-manylinux2010_x86_64.whl" validation: type: "sha256" - value: "cf1347450c0b7644ea142712619533553f02ef23f92f781312f6a3553d031fc7" + value: "cf1347450c0b7644ea142712619533553f02ef23f92f781312f6a3553d031fc7" - url: "https://files.pythonhosted.org/packages/05/57/ce2e7a8fa7c0afb54a0581b14a65b56e62b5759dbc98e80627142b8a3704/oauthlib-3.1.0-py2.py3-none-any.whl" filename: "oauthlib-3.1.0-py2.py3-none-any.whl" validation: type: "sha256" - value: "df884cd6cbe20e32633f1db1072e9356f53638e4361bef4e8b03c9127c9328ea" + value: "df884cd6cbe20e32633f1db1072e9356f53638e4361bef4e8b03c9127c9328ea" - url: "https://files.pythonhosted.org/packages/bc/19/404708a7e54ad2798907210462fd950c3442ea51acc8790f3da48d2bee8b/opt_einsum-3.3.0-py3-none-any.whl" filename: "opt_einsum-3.3.0-py3-none-any.whl" validation: type: "sha256" - value: "2455e59e3947d3c275477df7f5205b30635e266fe6dc300e3d9f9646bfcea147" + value: "2455e59e3947d3c275477df7f5205b30635e266fe6dc300e3d9f9646bfcea147" - url: "https://files.pythonhosted.org/packages/3b/ba/276d817d4b0184e544a9295e14e95f6148af5c5652033d30eb63d2c13bfa/protobuf-3.13.0-py2.py3-none-any.whl" filename: "protobuf-3.13.0-py2.py3-none-any.whl" validation: type: "sha256" - value: "d69697acac76d9f250ab745b46c725edf3e98ac24763990b24d58c16c642947a" + value: "d69697acac76d9f250ab745b46c725edf3e98ac24763990b24d58c16c642947a" - url: "https://files.pythonhosted.org/packages/62/1e/a94a8d635fa3ce4cfc7f506003548d0a2447ae76fd5ca53932970fe3053f/pyasn1-0.4.8-py2.py3-none-any.whl" filename: "pyasn1-0.4.8-py2.py3-none-any.whl" validation: type: "sha256" - value: "39c7e2ec30515947ff4e87fb6f456dfc6e84857d34be479c9d4a4ba4bf46aa5d" + value: "39c7e2ec30515947ff4e87fb6f456dfc6e84857d34be479c9d4a4ba4bf46aa5d" - url: "https://files.pythonhosted.org/packages/95/de/214830a981892a3e286c3794f41ae67a4495df1108c3da8a9f62159b9a9d/pyasn1_modules-0.2.8-py2.py3-none-any.whl" filename: "pyasn1_modules-0.2.8-py2.py3-none-any.whl" validation: type: "sha256" - value: "a50b808ffeb97cb3601dd25981f6b016cbb3d31fbf57a8b8a87428e6158d0c74" + value: "a50b808ffeb97cb3601dd25981f6b016cbb3d31fbf57a8b8a87428e6158d0c74" - url: "https://files.pythonhosted.org/packages/45/1e/0c169c6a5381e241ba7404532c16a21d86ab872c9bed8bdcd4c423954103/requests-2.24.0-py2.py3-none-any.whl" filename: "requests-2.24.0-py2.py3-none-any.whl" validation: type: "sha256" - value: "fe75cc94a9443b9246fc7049224f75604b113c36acb93f87b80ed42c44cbb898" + value: "fe75cc94a9443b9246fc7049224f75604b113c36acb93f87b80ed42c44cbb898" - url: "https://files.pythonhosted.org/packages/a3/12/b92740d845ab62ea4edf04d2f4164d82532b5a0b03836d4d4e71c6f3d379/requests_oauthlib-1.3.0-py2.py3-none-any.whl" filename: "requests_oauthlib-1.3.0-py2.py3-none-any.whl" validation: type: "sha256" - value: "7f71572defaecd16372f9006f33c2ec8c077c3cfa6f5911a9a90202beb513f3d" + value: "7f71572defaecd16372f9006f33c2ec8c077c3cfa6f5911a9a90202beb513f3d" - url: "https://files.pythonhosted.org/packages/1c/df/c3587a667d6b308fadc90b99e8bc8774788d033efcc70f4ecaae7fad144b/rsa-4.6-py3-none-any.whl" filename: "rsa-4.6-py3-none-any.whl" validation: type: "sha256" - value: "6166864e23d6b5195a5cfed6cd9fed0fe774e226d8f854fcb23b7bbef0350233" + value: "6166864e23d6b5195a5cfed6cd9fed0fe774e226d8f854fcb23b7bbef0350233" - url: "https://files.pythonhosted.org/packages/dc/29/162476fd44203116e7980cfbd9352eef9db37c49445d1fec35509022f6aa/scipy-1.4.1-cp36-cp36m-manylinux1_x86_64.whl" filename: "scipy-1.4.1-cp36-cp36m-manylinux1_x86_64.whl" validation: type: "sha256" - value: "386086e2972ed2db17cebf88610aab7d7f6e2c0ca30042dc9a89cf18dcc363fa" + value: "386086e2972ed2db17cebf88610aab7d7f6e2c0ca30042dc9a89cf18dcc363fa" - url: "https://files.pythonhosted.org/packages/c3/a9/5dc32465951cf4812e9e93b4ad2d314893c2fa6d5f66ce5c057af6e76d85/setuptools-49.6.0-py3-none-any.whl" filename: "setuptools-49.6.0-py3-none-any.whl" validation: type: "sha256" - value: "4dd5bb0a0a0cff77b46ca5dd3a84857ee48c83e8223886b556613c724994073f" + value: "4dd5bb0a0a0cff77b46ca5dd3a84857ee48c83e8223886b556613c724994073f" - url: "https://files.pythonhosted.org/packages/ee/ff/48bde5c0f013094d729fe4b0316ba2a24774b3ff1c52d924a8a4cb04078a/six-1.15.0-py2.py3-none-any.whl" filename: "six-1.15.0-py2.py3-none-any.whl" validation: type: "sha256" - value: "8b74bedcbbbaca38ff6d7491d76f2b06b3592611af620f8426e82dddb04a5ced" + value: "8b74bedcbbbaca38ff6d7491d76f2b06b3592611af620f8426e82dddb04a5ced" - url: "https://files.pythonhosted.org/packages/1d/74/0a6fcb206dcc72a6da9a62dd81784bfdbff5fedb099982861dc2219014fb/tensorboard-2.2.2-py3-none-any.whl" filename: "tensorboard-2.2.2-py3-none-any.whl" validation: type: "sha256" - value: "a3feb73e1221c0a512398ad2cd08570fb082d8a2ba364aa0562543ecbd3659ef" + value: "a3feb73e1221c0a512398ad2cd08570fb082d8a2ba364aa0562543ecbd3659ef" - url: "https://files.pythonhosted.org/packages/b6/85/5c5ac0a8c5efdfab916e9c6bc18963f6a6996a8a1e19ec4ad8c9ac9c623c/tensorboard_plugin_wit-1.7.0-py3-none-any.whl" filename: "tensorboard_plugin_wit-1.7.0-py3-none-any.whl" validation: type: "sha256" - value: "ee775f04821185c90d9a0e9c56970ee43d7c41403beb6629385b39517129685b" + value: "ee775f04821185c90d9a0e9c56970ee43d7c41403beb6629385b39517129685b" - url: "https://files.pythonhosted.org/packages/3d/be/679ce5254a8c8d07470efb4a4c00345fae91f766e64f1c2aece8796d7218/tensorflow-2.2.0-cp36-cp36m-manylinux2010_x86_64.whl" filename: "tensorflow-2.2.0-cp36-cp36m-manylinux2010_x86_64.whl" validation: type: "sha256" - value: "dc5548562308acde7931f040e73d46ae31b398924cf675c3486fd3504e00a4af" + value: "dc5548562308acde7931f040e73d46ae31b398924cf675c3486fd3504e00a4af" - url: "https://files.pythonhosted.org/packages/a4/f5/926ae53d6a226ec0fda5208e0e581cffed895ccc89e36ba76a8e60895b78/tensorflow_estimator-2.2.0-py2.py3-none-any.whl" filename: "tensorflow_estimator-2.2.0-py2.py3-none-any.whl" validation: type: "sha256" - value: "d09dacdd127f2579cea8d5af21f4a918036b8ae246adc82f26b61f91cc247dc2" + value: "d09dacdd127f2579cea8d5af21f4a918036b8ae246adc82f26b61f91cc247dc2" - url: "https://files.pythonhosted.org/packages/9f/f0/a391d1463ebb1b233795cabfc0ef38d3db4442339de68f847026199e69d7/urllib3-1.25.10-py2.py3-none-any.whl" filename: "urllib3-1.25.10-py2.py3-none-any.whl" validation: type: "sha256" - value: "e7983572181f5e1522d9c98453462384ee92a0be7fac5f1413a1e35c56cc0461" + value: "e7983572181f5e1522d9c98453462384ee92a0be7fac5f1413a1e35c56cc0461" - url: "https://files.pythonhosted.org/packages/a7/00/3df031b3ecd5444d572141321537080b40c1c25e1caa3d86cdd12e5e919c/wheel-0.35.1-py2.py3-none-any.whl" filename: "wheel-0.35.1-py2.py3-none-any.whl" validation: type: "sha256" - value: "497add53525d16c173c2c1c733b8f655510e909ea78cc0e29d374243544b77a2" + value: "497add53525d16c173c2c1c733b8f655510e909ea78cc0e29d374243544b77a2" - url: "https://files.pythonhosted.org/packages/b2/34/bfcb43cc0ba81f527bc4f40ef41ba2ff4080e047acb0586b56b3d017ace4/zipp-3.1.0-py3-none-any.whl" filename: "zipp-3.1.0-py3-none-any.whl" validation: type: "sha256" - value: "aa36550ff0c0b7ef7fa639055d797116ee891440eac1a56f378e2d3179e0320b" + value: "aa36550ff0c0b7ef7fa639055d797116ee891440eac1a56f378e2d3179e0320b" -- GitLab From 08d4b5d69f15f03fd2f0e533481505c060160b88 Mon Sep 17 00:00:00 2001 From: Christopger Vernooy Date: Thu, 27 Aug 2020 13:21:24 -0400 Subject: [PATCH 05/23] incorrect package maybe --- download.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/download.yaml b/download.yaml index f373801..e4922fd 100644 --- a/download.yaml +++ b/download.yaml @@ -70,11 +70,11 @@ resources: validation: type: "sha256" value: "b32482794a366b5366a32c92a9a9201b107821889935a02b3e51f6b432ea84ed" - - url: "https://files.pythonhosted.org/packages/2f/48/5aae2b4f415cdab711ec9ec762f433b5d55184ec6e91afa3bc1092d1d0ab/grpcio-1.31.0-cp36-cp36m-manylinux2010_x86_64.whl" + - url: "https://files.pythonhosted.org/packages/f0/61/91641ea993600493d37f4897dc14ef396086868c586869937f6d57479a13/grpcio-1.31.0-cp36-cp36m-manylinux2014_x86_64.whl" filename: "grpcio-1.31.0-cp36-cp36m-manylinux2014_x86_64.whl" validation: type: "sha256" - value: "259240aab2603891553e17ad5b2655693df79e02a9b887ff605bdeb2fcd3dcc9" + value: "bf39977282a79dc1b2765cc3402c0ada571c29a491caec6ed12c0993c1ec115e" - url: "https://files.pythonhosted.org/packages/60/06/cafdd44889200e5438b897388f3075b52a8ef01f28a17366d91de0fa2d05/h5py-2.10.0-cp36-cp36m-manylinux1_x86_64.whl" filename: "h5py-2.10.0-cp36-cp36m-manylinux1_x86_64.whl" validation: -- GitLab From b29b69a3f60b4ee24598b2c28b02ae9d9d204c66 Mon Sep 17 00:00:00 2001 From: Christopger Vernooy Date: Thu, 27 Aug 2020 13:53:54 -0400 Subject: [PATCH 06/23] need to upgrade pip to install other packages --- Dockerfile | 2 +- download.yaml | 79 ++++++++++++++++++++----------------- scripts/download_pippkgs.sh | 13 +++--- 3 files changed, 51 insertions(+), 43 deletions(-) diff --git a/Dockerfile b/Dockerfile index e9f891e..7a035f7 100644 --- a/Dockerfile +++ b/Dockerfile @@ -12,10 +12,10 @@ RUN dnf -y install python3 python3-devel python3-pip gcc cmake make && \ chmod +x /usr/sbin/policy-rc.d && \ cp -af /usr/sbin/policy-rc.d /sbin/initctl && \ sed -i 's/^exit.*/exit 0/' /sbin/initctl -RUN pip3 install --upgrade pip RUN mkdir -p /root/pip_pkgs #COPY pip_pkgs/*.whl /root/pip_pkgs/ COPY *.whl /root/pip_pkgs/ +RUN pip3 --disable-pip-version-check install /root/pip_pkgs/pip-20.2.2-py2.py3-none-any.whl RUN pip3 --disable-pip-version-check install /root/pip_pkgs/* ENV LANG C.UTF-8 ##make final image diff --git a/download.yaml b/download.yaml index e4922fd..3ab44a5 100644 --- a/download.yaml +++ b/download.yaml @@ -10,178 +10,183 @@ resources: validation: type: "sha256" value: "b62ffa81fb85f4332a4f609cab4ac40709470da05643a082ec1eb88e6d9b97d7" - - url: "https://files.pythonhosted.org/packages/79/4c/7c3275a01e12ef9368a892926ab932b33bb13d55794881e3573482b378a7/Keras_Preprocessing-1.1.2-py2.py3-none-any.whl" + - url: "https://files.pythonhosted.org/packages/79/4c/7c3275a01e12ef9368a892926ab932b33bb13d55794881e3573482b378a7/Keras_Preprocessing-1.1.2-py2.py3-none-any.whl" filename: "Keras_Preprocessing-1.1.2-py2.py3-none-any.whl" validation: type: "sha256" - value: "7b82029b130ff61cc99b55f3bd27427df4838576838c5b2f65940e4fcec99a7b" + value: "7b82029b130ff61cc99b55f3bd27427df4838576838c5b2f65940e4fcec99a7b" - url: "https://files.pythonhosted.org/packages/a4/63/eaec2bd025ab48c754b55e8819af0f6a69e2b1e187611dd40cbbe101ee7f/Markdown-3.2.2-py3-none-any.whl" filename: "Markdown-3.2.2-py3-none-any.whl" validation: type: "sha256" - value: "c467cd6233885534bf0fe96e62e3cf46cfc1605112356c4f9981512b8174de59" + value: "c467cd6233885534bf0fe96e62e3cf46cfc1605112356c4f9981512b8174de59" - url: "https://files.pythonhosted.org/packages/cc/94/5f7079a0e00bd6863ef8f1da638721e9da21e5bacee597595b318f71d62e/Werkzeug-1.0.1-py2.py3-none-any.whl" filename: "Werkzeug-1.0.1-py2.py3-none-any.whl" validation: type: "sha256" - value: "2de2a5db0baeae7b2d2664949077c2ac63fbd16d98da0ff71837f7d1dea3fd43" + value: "2de2a5db0baeae7b2d2664949077c2ac63fbd16d98da0ff71837f7d1dea3fd43" - url: "https://files.pythonhosted.org/packages/b9/07/f69dd3367368ad69f174bfe426a973651412ec11d48ec05c000f19fe0561/absl_py-0.10.0-py3-none-any.whl" filename: "absl_py-0.10.0-py3-none-any.whl" validation: type: "sha256" - value: "ea07d7d437798bffc14f39fccec3909d251a1e76e233205ded72b71c267e0178" + value: "ea07d7d437798bffc14f39fccec3909d251a1e76e233205ded72b71c267e0178" - url: "https://files.pythonhosted.org/packages/2b/03/13dde6512ad7b4557eb792fbcf0c653af6076b81e5941d36ec61f7ce6028/astunparse-1.6.3-py2.py3-none-any.whl" filename: "astunparse-1.6.3-py2.py3-none-any.whl" validation: type: "sha256" - value: "c2652417f2c8b5bb325c885ae329bdf3f86424075c4fd1a128674bc6fba4b8e8" + value: "c2652417f2c8b5bb325c885ae329bdf3f86424075c4fd1a128674bc6fba4b8e8" - url: "https://files.pythonhosted.org/packages/cd/5c/f3aa86b6d5482f3051b433c7616668a9b96fbe49a622210e2c9781938a5c/cachetools-4.1.1-py3-none-any.whl" filename: "cachetools-4.1.1-py3-none-any.whl" validation: type: "sha256" - value: "513d4ff98dd27f85743a8dc0e92f55ddb1b49e060c2d5961512855cda2c01a98" + value: "513d4ff98dd27f85743a8dc0e92f55ddb1b49e060c2d5961512855cda2c01a98" - url: "https://files.pythonhosted.org/packages/5e/c4/6c4fe722df5343c33226f0b4e0bb042e4dc13483228b4718baf286f86d87/certifi-2020.6.20-py2.py3-none-any.whl" filename: "certifi-2020.6.20-py2.py3-none-any.whl" validation: type: "sha256" - value: "8fc0819f1f30ba15bdb34cceffb9ef04d99f420f68eb75d901e9560b8749fc41" + value: "8fc0819f1f30ba15bdb34cceffb9ef04d99f420f68eb75d901e9560b8749fc41" - url: "https://files.pythonhosted.org/packages/bc/a9/01ffebfb562e4274b6487b4bb1ddec7ca55ec7510b22e4c51f14098443b8/chardet-3.0.4-py2.py3-none-any.whl" filename: "chardet-3.0.4-py2.py3-none-any.whl" validation: type: "sha256" - value: "fc323ffcaeaed0e0a02bf4d117757b98aed530d9ed4531e3e15460124c106691" + value: "fc323ffcaeaed0e0a02bf4d117757b98aed530d9ed4531e3e15460124c106691" - url: "https://files.pythonhosted.org/packages/d6/84/759f5dd23fec8ba71952d97bcc7e2c9d7d63bdc582421f3cd4be845f0c98/gast-0.3.3-py2.py3-none-any.whl" filename: "gast-0.3.3-py2.py3-none-any.whl" validation: type: "sha256" - value: "8f46f5be57ae6889a4e16e2ca113b1703ef17f2b0abceb83793eaba9e1351a45" + value: "8f46f5be57ae6889a4e16e2ca113b1703ef17f2b0abceb83793eaba9e1351a45" - url: "https://files.pythonhosted.org/packages/0f/79/4c59796bb02535aee5e5d2e2c5e16008aaf48903c2ec2ff566a2774bb3e0/google_auth-1.20.1-py2.py3-none-any.whl" filename: "google_auth-1.20.1-py2.py3-none-any.whl" validation: type: "sha256" - value: "ce1fb80b5c6d3dd038babcc43e221edeafefc72d983b3dc28b67b996f76f00b9" + value: "ce1fb80b5c6d3dd038babcc43e221edeafefc72d983b3dc28b67b996f76f00b9" - url: "https://files.pythonhosted.org/packages/7b/b8/88def36e74bee9fce511c9519571f4e485e890093ab7442284f4ffaef60b/google_auth_oauthlib-0.4.1-py2.py3-none-any.whl" filename: "google_auth_oauthlib-0.4.1-py2.py3-none-any.whl" validation: type: "sha256" - value: "a92a0f6f41a0fb6138454fbc02674e64f89d82a244ea32f98471733c8ef0e0e1" + value: "a92a0f6f41a0fb6138454fbc02674e64f89d82a244ea32f98471733c8ef0e0e1" - url: "https://files.pythonhosted.org/packages/a3/de/c648ef6835192e6e2cc03f40b19eeda4382c49b5bafb43d88b931c4c74ac/google_pasta-0.2.0-py3-none-any.whl" filename: "google_pasta-0.2.0-py3-none-any.whl" validation: type: "sha256" - value: "b32482794a366b5366a32c92a9a9201b107821889935a02b3e51f6b432ea84ed" - - url: "https://files.pythonhosted.org/packages/f0/61/91641ea993600493d37f4897dc14ef396086868c586869937f6d57479a13/grpcio-1.31.0-cp36-cp36m-manylinux2014_x86_64.whl" + value: "b32482794a366b5366a32c92a9a9201b107821889935a02b3e51f6b432ea84ed" + - url: "https://files.pythonhosted.org/packages/2f/48/5aae2b4f415cdab711ec9ec762f433b5d55184ec6e91afa3bc1092d1d0ab/grpcio-1.31.0-cp36-cp36m-manylinux2010_x86_64.whl" filename: "grpcio-1.31.0-cp36-cp36m-manylinux2014_x86_64.whl" validation: type: "sha256" - value: "bf39977282a79dc1b2765cc3402c0ada571c29a491caec6ed12c0993c1ec115e" + value: "259240aab2603891553e17ad5b2655693df79e02a9b887ff605bdeb2fcd3dcc9" + - url: "https://files.pythonhosted.org/packages/5a/4a/39400ff9b36e719bdf8f31c99fe1fa7842a42fa77432e584f707a5080063/pip-20.2.2-py2.py3-none-any.whl" + filename: "pip-20.2.2-py2.py3-none-any.whl" + validation: + type: "sha256" + value: "5244e51494f5d1dfbb89da492d4250cb07f9246644736d10ed6c45deb1a48500" - url: "https://files.pythonhosted.org/packages/60/06/cafdd44889200e5438b897388f3075b52a8ef01f28a17366d91de0fa2d05/h5py-2.10.0-cp36-cp36m-manylinux1_x86_64.whl" filename: "h5py-2.10.0-cp36-cp36m-manylinux1_x86_64.whl" validation: type: "sha256" - value: "d3c59549f90a891691991c17f8e58c8544060fdf3ccdea267100fa5f561ff62f" + value: "d3c59549f90a891691991c17f8e58c8544060fdf3ccdea267100fa5f561ff62f" - url: "https://files.pythonhosted.org/packages/a2/38/928ddce2273eaa564f6f50de919327bf3a00f091b5baba8dfa9460f3a8a8/idna-2.10-py2.py3-none-any.whl" filename: "idna-2.10-py2.py3-none-any.whl" validation: type: "sha256" - value: "b97d804b1e9b523befed77c48dacec60e6dcb0b5391d57af6a65a312a90648c0" + value: "b97d804b1e9b523befed77c48dacec60e6dcb0b5391d57af6a65a312a90648c0" - url: "https://files.pythonhosted.org/packages/8e/58/cdea07eb51fc2b906db0968a94700866fc46249bdc75cac23f9d13168929/importlib_metadata-1.7.0-py2.py3-none-any.whl" filename: "importlib_metadata-1.7.0-py2.py3-none-any.whl" validation: type: "sha256" - value: "dc15b2969b4ce36305c51eebe62d418ac7791e9a157911d58bfb1f9ccd8e2070" + value: "dc15b2969b4ce36305c51eebe62d418ac7791e9a157911d58bfb1f9ccd8e2070" - url: "https://files.pythonhosted.org/packages/22/e7/4b2bdddb99f5f631d8c1de259897c2b7d65dcfcc1e0a6fd17a7f62923500/numpy-1.19.1-cp36-cp36m-manylinux1_x86_64.whl" filename: "numpy-1.19.1-cp36-cp36m-manylinux2010_x86_64.whl" validation: type: "sha256" - value: "cf1347450c0b7644ea142712619533553f02ef23f92f781312f6a3553d031fc7" + value: "cf1347450c0b7644ea142712619533553f02ef23f92f781312f6a3553d031fc7" - url: "https://files.pythonhosted.org/packages/05/57/ce2e7a8fa7c0afb54a0581b14a65b56e62b5759dbc98e80627142b8a3704/oauthlib-3.1.0-py2.py3-none-any.whl" filename: "oauthlib-3.1.0-py2.py3-none-any.whl" validation: type: "sha256" - value: "df884cd6cbe20e32633f1db1072e9356f53638e4361bef4e8b03c9127c9328ea" + value: "df884cd6cbe20e32633f1db1072e9356f53638e4361bef4e8b03c9127c9328ea" - url: "https://files.pythonhosted.org/packages/bc/19/404708a7e54ad2798907210462fd950c3442ea51acc8790f3da48d2bee8b/opt_einsum-3.3.0-py3-none-any.whl" filename: "opt_einsum-3.3.0-py3-none-any.whl" validation: type: "sha256" - value: "2455e59e3947d3c275477df7f5205b30635e266fe6dc300e3d9f9646bfcea147" + value: "2455e59e3947d3c275477df7f5205b30635e266fe6dc300e3d9f9646bfcea147" - url: "https://files.pythonhosted.org/packages/3b/ba/276d817d4b0184e544a9295e14e95f6148af5c5652033d30eb63d2c13bfa/protobuf-3.13.0-py2.py3-none-any.whl" filename: "protobuf-3.13.0-py2.py3-none-any.whl" validation: type: "sha256" - value: "d69697acac76d9f250ab745b46c725edf3e98ac24763990b24d58c16c642947a" + value: "d69697acac76d9f250ab745b46c725edf3e98ac24763990b24d58c16c642947a" - url: "https://files.pythonhosted.org/packages/62/1e/a94a8d635fa3ce4cfc7f506003548d0a2447ae76fd5ca53932970fe3053f/pyasn1-0.4.8-py2.py3-none-any.whl" filename: "pyasn1-0.4.8-py2.py3-none-any.whl" validation: type: "sha256" - value: "39c7e2ec30515947ff4e87fb6f456dfc6e84857d34be479c9d4a4ba4bf46aa5d" + value: "39c7e2ec30515947ff4e87fb6f456dfc6e84857d34be479c9d4a4ba4bf46aa5d" - url: "https://files.pythonhosted.org/packages/95/de/214830a981892a3e286c3794f41ae67a4495df1108c3da8a9f62159b9a9d/pyasn1_modules-0.2.8-py2.py3-none-any.whl" filename: "pyasn1_modules-0.2.8-py2.py3-none-any.whl" validation: type: "sha256" - value: "a50b808ffeb97cb3601dd25981f6b016cbb3d31fbf57a8b8a87428e6158d0c74" + value: "a50b808ffeb97cb3601dd25981f6b016cbb3d31fbf57a8b8a87428e6158d0c74" - url: "https://files.pythonhosted.org/packages/45/1e/0c169c6a5381e241ba7404532c16a21d86ab872c9bed8bdcd4c423954103/requests-2.24.0-py2.py3-none-any.whl" filename: "requests-2.24.0-py2.py3-none-any.whl" validation: type: "sha256" - value: "fe75cc94a9443b9246fc7049224f75604b113c36acb93f87b80ed42c44cbb898" + value: "fe75cc94a9443b9246fc7049224f75604b113c36acb93f87b80ed42c44cbb898" - url: "https://files.pythonhosted.org/packages/a3/12/b92740d845ab62ea4edf04d2f4164d82532b5a0b03836d4d4e71c6f3d379/requests_oauthlib-1.3.0-py2.py3-none-any.whl" filename: "requests_oauthlib-1.3.0-py2.py3-none-any.whl" validation: type: "sha256" - value: "7f71572defaecd16372f9006f33c2ec8c077c3cfa6f5911a9a90202beb513f3d" + value: "7f71572defaecd16372f9006f33c2ec8c077c3cfa6f5911a9a90202beb513f3d" - url: "https://files.pythonhosted.org/packages/1c/df/c3587a667d6b308fadc90b99e8bc8774788d033efcc70f4ecaae7fad144b/rsa-4.6-py3-none-any.whl" filename: "rsa-4.6-py3-none-any.whl" validation: type: "sha256" - value: "6166864e23d6b5195a5cfed6cd9fed0fe774e226d8f854fcb23b7bbef0350233" + value: "6166864e23d6b5195a5cfed6cd9fed0fe774e226d8f854fcb23b7bbef0350233" - url: "https://files.pythonhosted.org/packages/dc/29/162476fd44203116e7980cfbd9352eef9db37c49445d1fec35509022f6aa/scipy-1.4.1-cp36-cp36m-manylinux1_x86_64.whl" filename: "scipy-1.4.1-cp36-cp36m-manylinux1_x86_64.whl" validation: type: "sha256" - value: "386086e2972ed2db17cebf88610aab7d7f6e2c0ca30042dc9a89cf18dcc363fa" + value: "386086e2972ed2db17cebf88610aab7d7f6e2c0ca30042dc9a89cf18dcc363fa" - url: "https://files.pythonhosted.org/packages/c3/a9/5dc32465951cf4812e9e93b4ad2d314893c2fa6d5f66ce5c057af6e76d85/setuptools-49.6.0-py3-none-any.whl" filename: "setuptools-49.6.0-py3-none-any.whl" validation: type: "sha256" - value: "4dd5bb0a0a0cff77b46ca5dd3a84857ee48c83e8223886b556613c724994073f" + value: "4dd5bb0a0a0cff77b46ca5dd3a84857ee48c83e8223886b556613c724994073f" - url: "https://files.pythonhosted.org/packages/ee/ff/48bde5c0f013094d729fe4b0316ba2a24774b3ff1c52d924a8a4cb04078a/six-1.15.0-py2.py3-none-any.whl" filename: "six-1.15.0-py2.py3-none-any.whl" validation: type: "sha256" - value: "8b74bedcbbbaca38ff6d7491d76f2b06b3592611af620f8426e82dddb04a5ced" + value: "8b74bedcbbbaca38ff6d7491d76f2b06b3592611af620f8426e82dddb04a5ced" - url: "https://files.pythonhosted.org/packages/1d/74/0a6fcb206dcc72a6da9a62dd81784bfdbff5fedb099982861dc2219014fb/tensorboard-2.2.2-py3-none-any.whl" filename: "tensorboard-2.2.2-py3-none-any.whl" validation: type: "sha256" - value: "a3feb73e1221c0a512398ad2cd08570fb082d8a2ba364aa0562543ecbd3659ef" + value: "a3feb73e1221c0a512398ad2cd08570fb082d8a2ba364aa0562543ecbd3659ef" - url: "https://files.pythonhosted.org/packages/b6/85/5c5ac0a8c5efdfab916e9c6bc18963f6a6996a8a1e19ec4ad8c9ac9c623c/tensorboard_plugin_wit-1.7.0-py3-none-any.whl" filename: "tensorboard_plugin_wit-1.7.0-py3-none-any.whl" validation: type: "sha256" - value: "ee775f04821185c90d9a0e9c56970ee43d7c41403beb6629385b39517129685b" + value: "ee775f04821185c90d9a0e9c56970ee43d7c41403beb6629385b39517129685b" - url: "https://files.pythonhosted.org/packages/3d/be/679ce5254a8c8d07470efb4a4c00345fae91f766e64f1c2aece8796d7218/tensorflow-2.2.0-cp36-cp36m-manylinux2010_x86_64.whl" filename: "tensorflow-2.2.0-cp36-cp36m-manylinux2010_x86_64.whl" validation: type: "sha256" - value: "dc5548562308acde7931f040e73d46ae31b398924cf675c3486fd3504e00a4af" + value: "dc5548562308acde7931f040e73d46ae31b398924cf675c3486fd3504e00a4af" - url: "https://files.pythonhosted.org/packages/a4/f5/926ae53d6a226ec0fda5208e0e581cffed895ccc89e36ba76a8e60895b78/tensorflow_estimator-2.2.0-py2.py3-none-any.whl" filename: "tensorflow_estimator-2.2.0-py2.py3-none-any.whl" validation: type: "sha256" - value: "d09dacdd127f2579cea8d5af21f4a918036b8ae246adc82f26b61f91cc247dc2" + value: "d09dacdd127f2579cea8d5af21f4a918036b8ae246adc82f26b61f91cc247dc2" - url: "https://files.pythonhosted.org/packages/9f/f0/a391d1463ebb1b233795cabfc0ef38d3db4442339de68f847026199e69d7/urllib3-1.25.10-py2.py3-none-any.whl" filename: "urllib3-1.25.10-py2.py3-none-any.whl" validation: type: "sha256" - value: "e7983572181f5e1522d9c98453462384ee92a0be7fac5f1413a1e35c56cc0461" + value: "e7983572181f5e1522d9c98453462384ee92a0be7fac5f1413a1e35c56cc0461" - url: "https://files.pythonhosted.org/packages/a7/00/3df031b3ecd5444d572141321537080b40c1c25e1caa3d86cdd12e5e919c/wheel-0.35.1-py2.py3-none-any.whl" filename: "wheel-0.35.1-py2.py3-none-any.whl" validation: type: "sha256" - value: "497add53525d16c173c2c1c733b8f655510e909ea78cc0e29d374243544b77a2" + value: "497add53525d16c173c2c1c733b8f655510e909ea78cc0e29d374243544b77a2" - url: "https://files.pythonhosted.org/packages/b2/34/bfcb43cc0ba81f527bc4f40ef41ba2ff4080e047acb0586b56b3d017ace4/zipp-3.1.0-py3-none-any.whl" filename: "zipp-3.1.0-py3-none-any.whl" validation: type: "sha256" - value: "aa36550ff0c0b7ef7fa639055d797116ee891440eac1a56f378e2d3179e0320b" + value: "aa36550ff0c0b7ef7fa639055d797116ee891440eac1a56f378e2d3179e0320b" diff --git a/scripts/download_pippkgs.sh b/scripts/download_pippkgs.sh index c757f6d..26d7cc5 100755 --- a/scripts/download_pippkgs.sh +++ b/scripts/download_pippkgs.sh @@ -1,8 +1,10 @@ #!/bin/bash +echo "##### Download script Log - Run Starting ######" >> download_script.log +download_pkg_locally='1' raw_pkglist=( $(cat files/requirements.txt) ) python_version='3' if [[ -e download.yaml ]]; then - echo "not creating new file, file exists" + echo "not creating new file, file exists" >> download_script.log else echo -e "---\r\nresources: " > download.yaml fi @@ -45,11 +47,12 @@ for p in ${raw_pkglist[@]}; do # TESTING: #dl_link=$(echo $dl_link | cut -d '#' -f 1 | cut -d '"' -f 2) #shasum=$(echo $dl_link | cut -d '=' -f 2 | cut -d ' ' -f 1) - echo "writing information to download.yaml for $pkg==$version" + echo "writing information to download.yaml for $pkg==$version" >> download_script.log echo -e " - url: \"$(echo $dl_link | cut -d '#' -f 1 | cut -d '"' -f 2)\"\r\n filename: \"$(echo $dl_link | rev | cut -d '/' -f 1 | rev | cut -d '#' -f 1 | cut -d '"' -f 2)\"\r\n validation:\r\n type: \"sha256\"\r\n value: \"$(echo $dl_link | cut -d '=' -f 2 | cut -d ' ' -f 1)" >> download.yaml - wget $(echo $dl_link | cut -d '#' -f 1 | cut -d '"' -f 2) -O pip_pkgs/$(echo $dl_link | rev | cut -d '/' -f 1 | rev | cut -d '#' -f 1 | cut -d '"' -f 2) + if [[ $download_pkg_locally == '1' ]]; then + wget $(echo $dl_link | cut -d '#' -f 1 | cut -d '"' -f 2) -O pip_pkgs/$(echo $dl_link | rev | cut -d '/' -f 1 | rev | cut -d '#' -f 1 | cut -d '"' -f 2) + fi else - echo "$pkg-$version: cannot match download package string" - echo $link_data + echo "$pkg-$version: cannot match download package string" >> download_script.log fi done -- GitLab From 9de360c3c85b0071df6fdcf03e5faf888082c0b3 Mon Sep 17 00:00:00 2001 From: cvernooy Date: Thu, 27 Aug 2020 18:04:35 +0000 Subject: [PATCH 07/23] Update download.yaml --- download.yaml | 312 +++++++++++++++++++++++++------------------------- 1 file changed, 156 insertions(+), 156 deletions(-) diff --git a/download.yaml b/download.yaml index 3ab44a5..f598dca 100644 --- a/download.yaml +++ b/download.yaml @@ -1,192 +1,192 @@ ---- -resources: - - url: "https://files.pythonhosted.org/packages/8a/48/a76be51647d0eb9f10e2a4511bf3ffb8cc1e6b14e9e4fab46173aa79f981/termcolor-1.1.0.tar.gz" - filename: "termcolor-1.1.0.tar.gz" - validation: - type: "sha256" - value: "1d6d69ce66211143803fbc56652b41d73b4a400a2891d7bf7a1cdf4c02de613b" - - url: "https://files.pythonhosted.org/packages/82/f7/e43cefbe88c5fd371f4cf0cf5eb3feccd07515af9fd6cf7dbf1d1793a797/wrapt-1.12.1.tar.gz" - filename: "wrapt-1.12.1.tar.gz" - validation: - type: "sha256" - value: "b62ffa81fb85f4332a4f609cab4ac40709470da05643a082ec1eb88e6d9b97d7" - - url: "https://files.pythonhosted.org/packages/79/4c/7c3275a01e12ef9368a892926ab932b33bb13d55794881e3573482b378a7/Keras_Preprocessing-1.1.2-py2.py3-none-any.whl" - filename: "Keras_Preprocessing-1.1.2-py2.py3-none-any.whl" - validation: - type: "sha256" +--- +resources: + - url: "https://files.pythonhosted.org/packages/8a/48/a76be51647d0eb9f10e2a4511bf3ffb8cc1e6b14e9e4fab46173aa79f981/termcolor-1.1.0.tar.gz" + filename: "termcolor-1.1.0.tar.gz" + validation: + type: "sha256" + value: "1d6d69ce66211143803fbc56652b41d73b4a400a2891d7bf7a1cdf4c02de613b" + - url: "https://files.pythonhosted.org/packages/82/f7/e43cefbe88c5fd371f4cf0cf5eb3feccd07515af9fd6cf7dbf1d1793a797/wrapt-1.12.1.tar.gz" + filename: "wrapt-1.12.1.tar.gz" + validation: + type: "sha256" + value: "b62ffa81fb85f4332a4f609cab4ac40709470da05643a082ec1eb88e6d9b97d7" + - url: "https://files.pythonhosted.org/packages/79/4c/7c3275a01e12ef9368a892926ab932b33bb13d55794881e3573482b378a7/Keras_Preprocessing-1.1.2-py2.py3-none-any.whl" + filename: "Keras_Preprocessing-1.1.2-py2.py3-none-any.whl" + validation: + type: "sha256" value: "7b82029b130ff61cc99b55f3bd27427df4838576838c5b2f65940e4fcec99a7b" - - url: "https://files.pythonhosted.org/packages/a4/63/eaec2bd025ab48c754b55e8819af0f6a69e2b1e187611dd40cbbe101ee7f/Markdown-3.2.2-py3-none-any.whl" - filename: "Markdown-3.2.2-py3-none-any.whl" - validation: - type: "sha256" + - url: "https://files.pythonhosted.org/packages/a4/63/eaec2bd025ab48c754b55e8819af0f6a69e2b1e187611dd40cbbe101ee7f/Markdown-3.2.2-py3-none-any.whl" + filename: "Markdown-3.2.2-py3-none-any.whl" + validation: + type: "sha256" value: "c467cd6233885534bf0fe96e62e3cf46cfc1605112356c4f9981512b8174de59" - - url: "https://files.pythonhosted.org/packages/cc/94/5f7079a0e00bd6863ef8f1da638721e9da21e5bacee597595b318f71d62e/Werkzeug-1.0.1-py2.py3-none-any.whl" - filename: "Werkzeug-1.0.1-py2.py3-none-any.whl" - validation: - type: "sha256" + - url: "https://files.pythonhosted.org/packages/cc/94/5f7079a0e00bd6863ef8f1da638721e9da21e5bacee597595b318f71d62e/Werkzeug-1.0.1-py2.py3-none-any.whl" + filename: "Werkzeug-1.0.1-py2.py3-none-any.whl" + validation: + type: "sha256" value: "2de2a5db0baeae7b2d2664949077c2ac63fbd16d98da0ff71837f7d1dea3fd43" - - url: "https://files.pythonhosted.org/packages/b9/07/f69dd3367368ad69f174bfe426a973651412ec11d48ec05c000f19fe0561/absl_py-0.10.0-py3-none-any.whl" - filename: "absl_py-0.10.0-py3-none-any.whl" - validation: - type: "sha256" + - url: "https://files.pythonhosted.org/packages/b9/07/f69dd3367368ad69f174bfe426a973651412ec11d48ec05c000f19fe0561/absl_py-0.10.0-py3-none-any.whl" + filename: "absl_py-0.10.0-py3-none-any.whl" + validation: + type: "sha256" value: "ea07d7d437798bffc14f39fccec3909d251a1e76e233205ded72b71c267e0178" - - url: "https://files.pythonhosted.org/packages/2b/03/13dde6512ad7b4557eb792fbcf0c653af6076b81e5941d36ec61f7ce6028/astunparse-1.6.3-py2.py3-none-any.whl" - filename: "astunparse-1.6.3-py2.py3-none-any.whl" - validation: - type: "sha256" + - url: "https://files.pythonhosted.org/packages/2b/03/13dde6512ad7b4557eb792fbcf0c653af6076b81e5941d36ec61f7ce6028/astunparse-1.6.3-py2.py3-none-any.whl" + filename: "astunparse-1.6.3-py2.py3-none-any.whl" + validation: + type: "sha256" value: "c2652417f2c8b5bb325c885ae329bdf3f86424075c4fd1a128674bc6fba4b8e8" - - url: "https://files.pythonhosted.org/packages/cd/5c/f3aa86b6d5482f3051b433c7616668a9b96fbe49a622210e2c9781938a5c/cachetools-4.1.1-py3-none-any.whl" - filename: "cachetools-4.1.1-py3-none-any.whl" - validation: - type: "sha256" + - url: "https://files.pythonhosted.org/packages/cd/5c/f3aa86b6d5482f3051b433c7616668a9b96fbe49a622210e2c9781938a5c/cachetools-4.1.1-py3-none-any.whl" + filename: "cachetools-4.1.1-py3-none-any.whl" + validation: + type: "sha256" value: "513d4ff98dd27f85743a8dc0e92f55ddb1b49e060c2d5961512855cda2c01a98" - - url: "https://files.pythonhosted.org/packages/5e/c4/6c4fe722df5343c33226f0b4e0bb042e4dc13483228b4718baf286f86d87/certifi-2020.6.20-py2.py3-none-any.whl" - filename: "certifi-2020.6.20-py2.py3-none-any.whl" - validation: - type: "sha256" + - url: "https://files.pythonhosted.org/packages/5e/c4/6c4fe722df5343c33226f0b4e0bb042e4dc13483228b4718baf286f86d87/certifi-2020.6.20-py2.py3-none-any.whl" + filename: "certifi-2020.6.20-py2.py3-none-any.whl" + validation: + type: "sha256" value: "8fc0819f1f30ba15bdb34cceffb9ef04d99f420f68eb75d901e9560b8749fc41" - - url: "https://files.pythonhosted.org/packages/bc/a9/01ffebfb562e4274b6487b4bb1ddec7ca55ec7510b22e4c51f14098443b8/chardet-3.0.4-py2.py3-none-any.whl" - filename: "chardet-3.0.4-py2.py3-none-any.whl" - validation: - type: "sha256" + - url: "https://files.pythonhosted.org/packages/bc/a9/01ffebfb562e4274b6487b4bb1ddec7ca55ec7510b22e4c51f14098443b8/chardet-3.0.4-py2.py3-none-any.whl" + filename: "chardet-3.0.4-py2.py3-none-any.whl" + validation: + type: "sha256" value: "fc323ffcaeaed0e0a02bf4d117757b98aed530d9ed4531e3e15460124c106691" - - url: "https://files.pythonhosted.org/packages/d6/84/759f5dd23fec8ba71952d97bcc7e2c9d7d63bdc582421f3cd4be845f0c98/gast-0.3.3-py2.py3-none-any.whl" - filename: "gast-0.3.3-py2.py3-none-any.whl" - validation: - type: "sha256" + - url: "https://files.pythonhosted.org/packages/d6/84/759f5dd23fec8ba71952d97bcc7e2c9d7d63bdc582421f3cd4be845f0c98/gast-0.3.3-py2.py3-none-any.whl" + filename: "gast-0.3.3-py2.py3-none-any.whl" + validation: + type: "sha256" value: "8f46f5be57ae6889a4e16e2ca113b1703ef17f2b0abceb83793eaba9e1351a45" - - url: "https://files.pythonhosted.org/packages/0f/79/4c59796bb02535aee5e5d2e2c5e16008aaf48903c2ec2ff566a2774bb3e0/google_auth-1.20.1-py2.py3-none-any.whl" - filename: "google_auth-1.20.1-py2.py3-none-any.whl" - validation: - type: "sha256" + - url: "https://files.pythonhosted.org/packages/0f/79/4c59796bb02535aee5e5d2e2c5e16008aaf48903c2ec2ff566a2774bb3e0/google_auth-1.20.1-py2.py3-none-any.whl" + filename: "google_auth-1.20.1-py2.py3-none-any.whl" + validation: + type: "sha256" value: "ce1fb80b5c6d3dd038babcc43e221edeafefc72d983b3dc28b67b996f76f00b9" - - url: "https://files.pythonhosted.org/packages/7b/b8/88def36e74bee9fce511c9519571f4e485e890093ab7442284f4ffaef60b/google_auth_oauthlib-0.4.1-py2.py3-none-any.whl" - filename: "google_auth_oauthlib-0.4.1-py2.py3-none-any.whl" - validation: - type: "sha256" + - url: "https://files.pythonhosted.org/packages/7b/b8/88def36e74bee9fce511c9519571f4e485e890093ab7442284f4ffaef60b/google_auth_oauthlib-0.4.1-py2.py3-none-any.whl" + filename: "google_auth_oauthlib-0.4.1-py2.py3-none-any.whl" + validation: + type: "sha256" value: "a92a0f6f41a0fb6138454fbc02674e64f89d82a244ea32f98471733c8ef0e0e1" - - url: "https://files.pythonhosted.org/packages/a3/de/c648ef6835192e6e2cc03f40b19eeda4382c49b5bafb43d88b931c4c74ac/google_pasta-0.2.0-py3-none-any.whl" - filename: "google_pasta-0.2.0-py3-none-any.whl" - validation: - type: "sha256" + - url: "https://files.pythonhosted.org/packages/a3/de/c648ef6835192e6e2cc03f40b19eeda4382c49b5bafb43d88b931c4c74ac/google_pasta-0.2.0-py3-none-any.whl" + filename: "google_pasta-0.2.0-py3-none-any.whl" + validation: + type: "sha256" value: "b32482794a366b5366a32c92a9a9201b107821889935a02b3e51f6b432ea84ed" - - url: "https://files.pythonhosted.org/packages/2f/48/5aae2b4f415cdab711ec9ec762f433b5d55184ec6e91afa3bc1092d1d0ab/grpcio-1.31.0-cp36-cp36m-manylinux2010_x86_64.whl" - filename: "grpcio-1.31.0-cp36-cp36m-manylinux2014_x86_64.whl" - validation: - type: "sha256" + - url: "https://files.pythonhosted.org/packages/2f/48/5aae2b4f415cdab711ec9ec762f433b5d55184ec6e91afa3bc1092d1d0ab/grpcio-1.31.0-cp36-cp36m-manylinux2010_x86_64.whl" + filename: "grpcio-1.31.0-cp36-cp36m-manylinux2014_x86_64.whl" + validation: + type: "sha256" value: "259240aab2603891553e17ad5b2655693df79e02a9b887ff605bdeb2fcd3dcc9" - - url: "https://files.pythonhosted.org/packages/5a/4a/39400ff9b36e719bdf8f31c99fe1fa7842a42fa77432e584f707a5080063/pip-20.2.2-py2.py3-none-any.whl" - filename: "pip-20.2.2-py2.py3-none-any.whl" - validation: - type: "sha256" + - url: "https://files.pythonhosted.org/packages/5a/4a/39400ff9b36e719bdf8f31c99fe1fa7842a42fa77432e584f707a5080063/pip-20.2.2-py2.py3-none-any.whl" + filename: "pip-20.2.2-py2.py3-none-any.whl" + validation: + type: "sha256" value: "5244e51494f5d1dfbb89da492d4250cb07f9246644736d10ed6c45deb1a48500" - - url: "https://files.pythonhosted.org/packages/60/06/cafdd44889200e5438b897388f3075b52a8ef01f28a17366d91de0fa2d05/h5py-2.10.0-cp36-cp36m-manylinux1_x86_64.whl" - filename: "h5py-2.10.0-cp36-cp36m-manylinux1_x86_64.whl" - validation: - type: "sha256" + - url: "https://files.pythonhosted.org/packages/60/06/cafdd44889200e5438b897388f3075b52a8ef01f28a17366d91de0fa2d05/h5py-2.10.0-cp36-cp36m-manylinux1_x86_64.whl" + filename: "h5py-2.10.0-cp36-cp36m-manylinux1_x86_64.whl" + validation: + type: "sha256" value: "d3c59549f90a891691991c17f8e58c8544060fdf3ccdea267100fa5f561ff62f" - - url: "https://files.pythonhosted.org/packages/a2/38/928ddce2273eaa564f6f50de919327bf3a00f091b5baba8dfa9460f3a8a8/idna-2.10-py2.py3-none-any.whl" - filename: "idna-2.10-py2.py3-none-any.whl" - validation: - type: "sha256" + - url: "https://files.pythonhosted.org/packages/a2/38/928ddce2273eaa564f6f50de919327bf3a00f091b5baba8dfa9460f3a8a8/idna-2.10-py2.py3-none-any.whl" + filename: "idna-2.10-py2.py3-none-any.whl" + validation: + type: "sha256" value: "b97d804b1e9b523befed77c48dacec60e6dcb0b5391d57af6a65a312a90648c0" - - url: "https://files.pythonhosted.org/packages/8e/58/cdea07eb51fc2b906db0968a94700866fc46249bdc75cac23f9d13168929/importlib_metadata-1.7.0-py2.py3-none-any.whl" - filename: "importlib_metadata-1.7.0-py2.py3-none-any.whl" - validation: - type: "sha256" + - url: "https://files.pythonhosted.org/packages/8e/58/cdea07eb51fc2b906db0968a94700866fc46249bdc75cac23f9d13168929/importlib_metadata-1.7.0-py2.py3-none-any.whl" + filename: "importlib_metadata-1.7.0-py2.py3-none-any.whl" + validation: + type: "sha256" value: "dc15b2969b4ce36305c51eebe62d418ac7791e9a157911d58bfb1f9ccd8e2070" - - url: "https://files.pythonhosted.org/packages/22/e7/4b2bdddb99f5f631d8c1de259897c2b7d65dcfcc1e0a6fd17a7f62923500/numpy-1.19.1-cp36-cp36m-manylinux1_x86_64.whl" - filename: "numpy-1.19.1-cp36-cp36m-manylinux2010_x86_64.whl" - validation: - type: "sha256" + - url: "https://files.pythonhosted.org/packages/22/e7/4b2bdddb99f5f631d8c1de259897c2b7d65dcfcc1e0a6fd17a7f62923500/numpy-1.19.1-cp36-cp36m-manylinux1_x86_64.whl" + filename: "numpy-1.19.1-cp36-cp36m-manylinux2010_x86_64.whl" + validation: + type: "sha256" value: "cf1347450c0b7644ea142712619533553f02ef23f92f781312f6a3553d031fc7" - - url: "https://files.pythonhosted.org/packages/05/57/ce2e7a8fa7c0afb54a0581b14a65b56e62b5759dbc98e80627142b8a3704/oauthlib-3.1.0-py2.py3-none-any.whl" - filename: "oauthlib-3.1.0-py2.py3-none-any.whl" - validation: - type: "sha256" + - url: "https://files.pythonhosted.org/packages/05/57/ce2e7a8fa7c0afb54a0581b14a65b56e62b5759dbc98e80627142b8a3704/oauthlib-3.1.0-py2.py3-none-any.whl" + filename: "oauthlib-3.1.0-py2.py3-none-any.whl" + validation: + type: "sha256" value: "df884cd6cbe20e32633f1db1072e9356f53638e4361bef4e8b03c9127c9328ea" - - url: "https://files.pythonhosted.org/packages/bc/19/404708a7e54ad2798907210462fd950c3442ea51acc8790f3da48d2bee8b/opt_einsum-3.3.0-py3-none-any.whl" - filename: "opt_einsum-3.3.0-py3-none-any.whl" - validation: - type: "sha256" + - url: "https://files.pythonhosted.org/packages/bc/19/404708a7e54ad2798907210462fd950c3442ea51acc8790f3da48d2bee8b/opt_einsum-3.3.0-py3-none-any.whl" + filename: "opt_einsum-3.3.0-py3-none-any.whl" + validation: + type: "sha256" value: "2455e59e3947d3c275477df7f5205b30635e266fe6dc300e3d9f9646bfcea147" - - url: "https://files.pythonhosted.org/packages/3b/ba/276d817d4b0184e544a9295e14e95f6148af5c5652033d30eb63d2c13bfa/protobuf-3.13.0-py2.py3-none-any.whl" - filename: "protobuf-3.13.0-py2.py3-none-any.whl" - validation: - type: "sha256" + - url: "https://files.pythonhosted.org/packages/3b/ba/276d817d4b0184e544a9295e14e95f6148af5c5652033d30eb63d2c13bfa/protobuf-3.13.0-py2.py3-none-any.whl" + filename: "protobuf-3.13.0-py2.py3-none-any.whl" + validation: + type: "sha256" value: "d69697acac76d9f250ab745b46c725edf3e98ac24763990b24d58c16c642947a" - - url: "https://files.pythonhosted.org/packages/62/1e/a94a8d635fa3ce4cfc7f506003548d0a2447ae76fd5ca53932970fe3053f/pyasn1-0.4.8-py2.py3-none-any.whl" - filename: "pyasn1-0.4.8-py2.py3-none-any.whl" - validation: - type: "sha256" + - url: "https://files.pythonhosted.org/packages/62/1e/a94a8d635fa3ce4cfc7f506003548d0a2447ae76fd5ca53932970fe3053f/pyasn1-0.4.8-py2.py3-none-any.whl" + filename: "pyasn1-0.4.8-py2.py3-none-any.whl" + validation: + type: "sha256" value: "39c7e2ec30515947ff4e87fb6f456dfc6e84857d34be479c9d4a4ba4bf46aa5d" - - url: "https://files.pythonhosted.org/packages/95/de/214830a981892a3e286c3794f41ae67a4495df1108c3da8a9f62159b9a9d/pyasn1_modules-0.2.8-py2.py3-none-any.whl" - filename: "pyasn1_modules-0.2.8-py2.py3-none-any.whl" - validation: - type: "sha256" + - url: "https://files.pythonhosted.org/packages/95/de/214830a981892a3e286c3794f41ae67a4495df1108c3da8a9f62159b9a9d/pyasn1_modules-0.2.8-py2.py3-none-any.whl" + filename: "pyasn1_modules-0.2.8-py2.py3-none-any.whl" + validation: + type: "sha256" value: "a50b808ffeb97cb3601dd25981f6b016cbb3d31fbf57a8b8a87428e6158d0c74" - - url: "https://files.pythonhosted.org/packages/45/1e/0c169c6a5381e241ba7404532c16a21d86ab872c9bed8bdcd4c423954103/requests-2.24.0-py2.py3-none-any.whl" - filename: "requests-2.24.0-py2.py3-none-any.whl" - validation: - type: "sha256" + - url: "https://files.pythonhosted.org/packages/45/1e/0c169c6a5381e241ba7404532c16a21d86ab872c9bed8bdcd4c423954103/requests-2.24.0-py2.py3-none-any.whl" + filename: "requests-2.24.0-py2.py3-none-any.whl" + validation: + type: "sha256" value: "fe75cc94a9443b9246fc7049224f75604b113c36acb93f87b80ed42c44cbb898" - - url: "https://files.pythonhosted.org/packages/a3/12/b92740d845ab62ea4edf04d2f4164d82532b5a0b03836d4d4e71c6f3d379/requests_oauthlib-1.3.0-py2.py3-none-any.whl" - filename: "requests_oauthlib-1.3.0-py2.py3-none-any.whl" - validation: - type: "sha256" + - url: "https://files.pythonhosted.org/packages/a3/12/b92740d845ab62ea4edf04d2f4164d82532b5a0b03836d4d4e71c6f3d379/requests_oauthlib-1.3.0-py2.py3-none-any.whl" + filename: "requests_oauthlib-1.3.0-py2.py3-none-any.whl" + validation: + type: "sha256" value: "7f71572defaecd16372f9006f33c2ec8c077c3cfa6f5911a9a90202beb513f3d" - - url: "https://files.pythonhosted.org/packages/1c/df/c3587a667d6b308fadc90b99e8bc8774788d033efcc70f4ecaae7fad144b/rsa-4.6-py3-none-any.whl" - filename: "rsa-4.6-py3-none-any.whl" - validation: - type: "sha256" + - url: "https://files.pythonhosted.org/packages/1c/df/c3587a667d6b308fadc90b99e8bc8774788d033efcc70f4ecaae7fad144b/rsa-4.6-py3-none-any.whl" + filename: "rsa-4.6-py3-none-any.whl" + validation: + type: "sha256" value: "6166864e23d6b5195a5cfed6cd9fed0fe774e226d8f854fcb23b7bbef0350233" - - url: "https://files.pythonhosted.org/packages/dc/29/162476fd44203116e7980cfbd9352eef9db37c49445d1fec35509022f6aa/scipy-1.4.1-cp36-cp36m-manylinux1_x86_64.whl" - filename: "scipy-1.4.1-cp36-cp36m-manylinux1_x86_64.whl" - validation: - type: "sha256" + - url: "https://files.pythonhosted.org/packages/dc/29/162476fd44203116e7980cfbd9352eef9db37c49445d1fec35509022f6aa/scipy-1.4.1-cp36-cp36m-manylinux1_x86_64.whl" + filename: "scipy-1.4.1-cp36-cp36m-manylinux1_x86_64.whl" + validation: + type: "sha256" value: "386086e2972ed2db17cebf88610aab7d7f6e2c0ca30042dc9a89cf18dcc363fa" - - url: "https://files.pythonhosted.org/packages/c3/a9/5dc32465951cf4812e9e93b4ad2d314893c2fa6d5f66ce5c057af6e76d85/setuptools-49.6.0-py3-none-any.whl" - filename: "setuptools-49.6.0-py3-none-any.whl" - validation: - type: "sha256" + - url: "https://files.pythonhosted.org/packages/c3/a9/5dc32465951cf4812e9e93b4ad2d314893c2fa6d5f66ce5c057af6e76d85/setuptools-49.6.0-py3-none-any.whl" + filename: "setuptools-49.6.0-py3-none-any.whl" + validation: + type: "sha256" value: "4dd5bb0a0a0cff77b46ca5dd3a84857ee48c83e8223886b556613c724994073f" - - url: "https://files.pythonhosted.org/packages/ee/ff/48bde5c0f013094d729fe4b0316ba2a24774b3ff1c52d924a8a4cb04078a/six-1.15.0-py2.py3-none-any.whl" - filename: "six-1.15.0-py2.py3-none-any.whl" - validation: - type: "sha256" + - url: "https://files.pythonhosted.org/packages/ee/ff/48bde5c0f013094d729fe4b0316ba2a24774b3ff1c52d924a8a4cb04078a/six-1.15.0-py2.py3-none-any.whl" + filename: "six-1.15.0-py2.py3-none-any.whl" + validation: + type: "sha256" value: "8b74bedcbbbaca38ff6d7491d76f2b06b3592611af620f8426e82dddb04a5ced" - - url: "https://files.pythonhosted.org/packages/1d/74/0a6fcb206dcc72a6da9a62dd81784bfdbff5fedb099982861dc2219014fb/tensorboard-2.2.2-py3-none-any.whl" - filename: "tensorboard-2.2.2-py3-none-any.whl" - validation: - type: "sha256" + - url: "https://files.pythonhosted.org/packages/1d/74/0a6fcb206dcc72a6da9a62dd81784bfdbff5fedb099982861dc2219014fb/tensorboard-2.2.2-py3-none-any.whl" + filename: "tensorboard-2.2.2-py3-none-any.whl" + validation: + type: "sha256" value: "a3feb73e1221c0a512398ad2cd08570fb082d8a2ba364aa0562543ecbd3659ef" - - url: "https://files.pythonhosted.org/packages/b6/85/5c5ac0a8c5efdfab916e9c6bc18963f6a6996a8a1e19ec4ad8c9ac9c623c/tensorboard_plugin_wit-1.7.0-py3-none-any.whl" - filename: "tensorboard_plugin_wit-1.7.0-py3-none-any.whl" - validation: - type: "sha256" + - url: "https://files.pythonhosted.org/packages/b6/85/5c5ac0a8c5efdfab916e9c6bc18963f6a6996a8a1e19ec4ad8c9ac9c623c/tensorboard_plugin_wit-1.7.0-py3-none-any.whl" + filename: "tensorboard_plugin_wit-1.7.0-py3-none-any.whl" + validation: + type: "sha256" value: "ee775f04821185c90d9a0e9c56970ee43d7c41403beb6629385b39517129685b" - - url: "https://files.pythonhosted.org/packages/3d/be/679ce5254a8c8d07470efb4a4c00345fae91f766e64f1c2aece8796d7218/tensorflow-2.2.0-cp36-cp36m-manylinux2010_x86_64.whl" - filename: "tensorflow-2.2.0-cp36-cp36m-manylinux2010_x86_64.whl" - validation: - type: "sha256" + - url: "https://files.pythonhosted.org/packages/3d/be/679ce5254a8c8d07470efb4a4c00345fae91f766e64f1c2aece8796d7218/tensorflow-2.2.0-cp36-cp36m-manylinux2010_x86_64.whl" + filename: "tensorflow-2.2.0-cp36-cp36m-manylinux2010_x86_64.whl" + validation: + type: "sha256" value: "dc5548562308acde7931f040e73d46ae31b398924cf675c3486fd3504e00a4af" - - url: "https://files.pythonhosted.org/packages/a4/f5/926ae53d6a226ec0fda5208e0e581cffed895ccc89e36ba76a8e60895b78/tensorflow_estimator-2.2.0-py2.py3-none-any.whl" - filename: "tensorflow_estimator-2.2.0-py2.py3-none-any.whl" - validation: - type: "sha256" + - url: "https://files.pythonhosted.org/packages/a4/f5/926ae53d6a226ec0fda5208e0e581cffed895ccc89e36ba76a8e60895b78/tensorflow_estimator-2.2.0-py2.py3-none-any.whl" + filename: "tensorflow_estimator-2.2.0-py2.py3-none-any.whl" + validation: + type: "sha256" value: "d09dacdd127f2579cea8d5af21f4a918036b8ae246adc82f26b61f91cc247dc2" - - url: "https://files.pythonhosted.org/packages/9f/f0/a391d1463ebb1b233795cabfc0ef38d3db4442339de68f847026199e69d7/urllib3-1.25.10-py2.py3-none-any.whl" - filename: "urllib3-1.25.10-py2.py3-none-any.whl" - validation: - type: "sha256" + - url: "https://files.pythonhosted.org/packages/9f/f0/a391d1463ebb1b233795cabfc0ef38d3db4442339de68f847026199e69d7/urllib3-1.25.10-py2.py3-none-any.whl" + filename: "urllib3-1.25.10-py2.py3-none-any.whl" + validation: + type: "sha256" value: "e7983572181f5e1522d9c98453462384ee92a0be7fac5f1413a1e35c56cc0461" - - url: "https://files.pythonhosted.org/packages/a7/00/3df031b3ecd5444d572141321537080b40c1c25e1caa3d86cdd12e5e919c/wheel-0.35.1-py2.py3-none-any.whl" - filename: "wheel-0.35.1-py2.py3-none-any.whl" - validation: - type: "sha256" + - url: "https://files.pythonhosted.org/packages/a7/00/3df031b3ecd5444d572141321537080b40c1c25e1caa3d86cdd12e5e919c/wheel-0.35.1-py2.py3-none-any.whl" + filename: "wheel-0.35.1-py2.py3-none-any.whl" + validation: + type: "sha256" value: "497add53525d16c173c2c1c733b8f655510e909ea78cc0e29d374243544b77a2" - - url: "https://files.pythonhosted.org/packages/b2/34/bfcb43cc0ba81f527bc4f40ef41ba2ff4080e047acb0586b56b3d017ace4/zipp-3.1.0-py3-none-any.whl" - filename: "zipp-3.1.0-py3-none-any.whl" - validation: - type: "sha256" + - url: "https://files.pythonhosted.org/packages/b2/34/bfcb43cc0ba81f527bc4f40ef41ba2ff4080e047acb0586b56b3d017ace4/zipp-3.1.0-py3-none-any.whl" + filename: "zipp-3.1.0-py3-none-any.whl" + validation: + type: "sha256" value: "aa36550ff0c0b7ef7fa639055d797116ee891440eac1a56f378e2d3179e0320b" -- GitLab From 87f8a9842051d839d41e810e0fdd757e1ec15903 Mon Sep 17 00:00:00 2001 From: cvernooy Date: Thu, 27 Aug 2020 18:18:57 +0000 Subject: [PATCH 08/23] Update Dockerfile --- Dockerfile | 2 ++ 1 file changed, 2 insertions(+) diff --git a/Dockerfile b/Dockerfile index 7a035f7..213a197 100644 --- a/Dockerfile +++ b/Dockerfile @@ -16,6 +16,8 @@ RUN mkdir -p /root/pip_pkgs #COPY pip_pkgs/*.whl /root/pip_pkgs/ COPY *.whl /root/pip_pkgs/ RUN pip3 --disable-pip-version-check install /root/pip_pkgs/pip-20.2.2-py2.py3-none-any.whl +RUN pip3 --disable-pip-version-check install /root/pip_pkgs/termcolor-1.1.0.tar.gz +RUN pip3 --disable-pip-version-check install /root/pip_pkgs/wrapt-1.12.1.tar.gz RUN pip3 --disable-pip-version-check install /root/pip_pkgs/* ENV LANG C.UTF-8 ##make final image -- GitLab From b69e5c857c93239ec7019b45884740ce9a084e8e Mon Sep 17 00:00:00 2001 From: cvernooy Date: Thu, 27 Aug 2020 18:23:52 +0000 Subject: [PATCH 09/23] Update download.yaml --- download.yaml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/download.yaml b/download.yaml index f598dca..5304a14 100644 --- a/download.yaml +++ b/download.yaml @@ -5,11 +5,11 @@ resources: validation: type: "sha256" value: "1d6d69ce66211143803fbc56652b41d73b4a400a2891d7bf7a1cdf4c02de613b" - - url: "https://files.pythonhosted.org/packages/82/f7/e43cefbe88c5fd371f4cf0cf5eb3feccd07515af9fd6cf7dbf1d1793a797/wrapt-1.12.1.tar.gz" - filename: "wrapt-1.12.1.tar.gz" + - url: "https://files.pythonhosted.org/packages/67/b2/0f71ca90b0ade7fad27e3d20327c996c6252a2ffe88f50a95bba7434eda9/wrapt-1.11.1.tar.gz" + filename: "wrapt-1.11.1.tar.gz" validation: type: "sha256" - value: "b62ffa81fb85f4332a4f609cab4ac40709470da05643a082ec1eb88e6d9b97d7" + value: "4aea003270831cceb8a90ff27c4031da6ead7ec1886023b80ce0dfe0adf61533" - url: "https://files.pythonhosted.org/packages/79/4c/7c3275a01e12ef9368a892926ab932b33bb13d55794881e3573482b378a7/Keras_Preprocessing-1.1.2-py2.py3-none-any.whl" filename: "Keras_Preprocessing-1.1.2-py2.py3-none-any.whl" validation: -- GitLab From 61935e11693844dffc480d2aef64b652aaba3a60 Mon Sep 17 00:00:00 2001 From: cvernooy Date: Thu, 27 Aug 2020 18:42:31 +0000 Subject: [PATCH 10/23] Update Dockerfile --- Dockerfile | 2 ++ 1 file changed, 2 insertions(+) diff --git a/Dockerfile b/Dockerfile index 213a197..481a620 100644 --- a/Dockerfile +++ b/Dockerfile @@ -14,7 +14,9 @@ RUN dnf -y install python3 python3-devel python3-pip gcc cmake make && \ sed -i 's/^exit.*/exit 0/' /sbin/initctl RUN mkdir -p /root/pip_pkgs #COPY pip_pkgs/*.whl /root/pip_pkgs/ +#COPY pip_pkgs/*.tar.gz /root/pip_pkgs/ COPY *.whl /root/pip_pkgs/ +COPY *.tar.gz /root/pip_pkgs/ RUN pip3 --disable-pip-version-check install /root/pip_pkgs/pip-20.2.2-py2.py3-none-any.whl RUN pip3 --disable-pip-version-check install /root/pip_pkgs/termcolor-1.1.0.tar.gz RUN pip3 --disable-pip-version-check install /root/pip_pkgs/wrapt-1.12.1.tar.gz -- GitLab From 35500babef81669c92851bc6192e97457006670e Mon Sep 17 00:00:00 2001 From: cvernooy Date: Thu, 27 Aug 2020 18:59:47 +0000 Subject: [PATCH 11/23] Update Dockerfile --- Dockerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Dockerfile b/Dockerfile index 481a620..d2215fa 100644 --- a/Dockerfile +++ b/Dockerfile @@ -19,7 +19,7 @@ COPY *.whl /root/pip_pkgs/ COPY *.tar.gz /root/pip_pkgs/ RUN pip3 --disable-pip-version-check install /root/pip_pkgs/pip-20.2.2-py2.py3-none-any.whl RUN pip3 --disable-pip-version-check install /root/pip_pkgs/termcolor-1.1.0.tar.gz -RUN pip3 --disable-pip-version-check install /root/pip_pkgs/wrapt-1.12.1.tar.gz +RUN pip3 --disable-pip-version-check install /root/pip_pkgs/wrapt-1.11.1.tar.gz RUN pip3 --disable-pip-version-check install /root/pip_pkgs/* ENV LANG C.UTF-8 ##make final image -- GitLab From 3f521abcbfe39cf4b0e1d2208a96eaafbedb5c90 Mon Sep 17 00:00:00 2001 From: Christopger Vernooy Date: Thu, 27 Aug 2020 23:37:33 -0400 Subject: [PATCH 12/23] updates --- .gitignore | 2 +- Dockerfile | 36 ++++++++++++++++++------------------ 2 files changed, 19 insertions(+), 19 deletions(-) diff --git a/.gitignore b/.gitignore index a9ddbe1..d5e382d 100644 --- a/.gitignore +++ b/.gitignore @@ -1,2 +1,2 @@ -./pip_pkgs +pip_pkgs/ download_script.log \ No newline at end of file diff --git a/Dockerfile b/Dockerfile index d2215fa..edcaa77 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,6 +1,6 @@ #create dev image -ARG BASE_REGISTRY=registry1.dsop.io -#ARG BASE_REGISTRY=registry.access.redhat.com +#ARG BASE_REGISTRY=registry1.dsop.io +ARG BASE_REGISTRY=registry.access.redhat.com ARG BASE_IMAGE=ubi8 ARG BASE_TAG=8.2 FROM ${BASE_REGISTRY}/${BASE_IMAGE}:${BASE_TAG} as builder @@ -13,10 +13,10 @@ RUN dnf -y install python3 python3-devel python3-pip gcc cmake make && \ cp -af /usr/sbin/policy-rc.d /sbin/initctl && \ sed -i 's/^exit.*/exit 0/' /sbin/initctl RUN mkdir -p /root/pip_pkgs -#COPY pip_pkgs/*.whl /root/pip_pkgs/ -#COPY pip_pkgs/*.tar.gz /root/pip_pkgs/ -COPY *.whl /root/pip_pkgs/ -COPY *.tar.gz /root/pip_pkgs/ +COPY pip_pkgs/*.whl /root/pip_pkgs/ +COPY pip_pkgs/*.tar.gz /root/pip_pkgs/ +#COPY *.whl /root/pip_pkgs/ +#COPY *.tar.gz /root/pip_pkgs/ RUN pip3 --disable-pip-version-check install /root/pip_pkgs/pip-20.2.2-py2.py3-none-any.whl RUN pip3 --disable-pip-version-check install /root/pip_pkgs/termcolor-1.1.0.tar.gz RUN pip3 --disable-pip-version-check install /root/pip_pkgs/wrapt-1.11.1.tar.gz @@ -24,7 +24,7 @@ RUN pip3 --disable-pip-version-check install /root/pip_pkgs/* ENV LANG C.UTF-8 ##make final image FROM ${BASE_REGISTRY}/${BASE_IMAGE}:${BASE_TAG} -LABEL org.opencontainers.image.title="tenserflow" \ +LABEL org.opencontainers.image.title="tensorflow" \ org.opencontainers.image.description="ternserflow 2.2.0 container based off UBI 8" \ org.opencontainers.image.licenses="Apache-2.0" \ org.opencontainers.image.url="https://hub.docker.com/layers/tensorflow/tensorflow/2.2.0/images/sha256-08901711826b185136886c7b8271b9fdbe86b8ccb598669781a1f5cb340184eb?context=explore" \ @@ -33,18 +33,18 @@ LABEL org.opencontainers.image.title="tenserflow" \ ENV LANG C.UTF-8 ##systemd stuff aken from upstream public container history of the Ubuntu build, not sure if it's required here RUN mkdir -p /run/systemd && \ - echo 'docker' > /run/systemd/container && \ - echo '#!/bin/sh' > /usr/sbin/policy-rc.d && \ - echo 'exit 101' >> /usr/sbin/policy-rc.d && \ - chmod +x /usr/sbin/policy-rc.d && \ - cp -af /usr/sbin/policy-rc.d /sbin/initctl && \ - sed -i 's/^exit.*/exit 0/' /sbin/initctl && \ - adduser tensorflow && \ - dnf upgrade -y && \ - dnf clean all && \ - rm -rf /var/cache/dnf + echo 'docker' > /run/systemd/container && \ + echo '#!/bin/sh' > /usr/sbin/policy-rc.d && \ + echo 'exit 101' >> /usr/sbin/policy-rc.d && \ + chmod +x /usr/sbin/policy-rc.d && \ + cp -af /usr/sbin/policy-rc.d /sbin/initctl && \ + sed -i 's/^exit.*/exit 0/' /sbin/initctl +RUN dnf upgrade -y && \ + dnf clean all && \ + rm -rf /var/cache/dnf +RUN groupadd -r tensorflow && useradd -r -g tensorflow tensorflow RUN find / -path /proc -prune -o -perm /4000 -exec chmod u-s {} \; RUN find / -path /proc -prune -o -perm /2000 -exec chmod g-s {} \; RUN rm -rf /root/pip_pkgs/ COPY --from=builder /usr/lib/python3.6 /usr/lib/python3.6 -USER tenserflow \ No newline at end of file +USER tensorflow \ No newline at end of file -- GitLab From e9f8183ec10c6f7db6be8673a4dbe9cb9e7b79d0 Mon Sep 17 00:00:00 2001 From: Christopger Vernooy Date: Fri, 28 Aug 2020 15:40:28 -0400 Subject: [PATCH 13/23] pipeline path change --- Dockerfile | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/Dockerfile b/Dockerfile index edcaa77..4ed7fd8 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,6 +1,6 @@ #create dev image -#ARG BASE_REGISTRY=registry1.dsop.io -ARG BASE_REGISTRY=registry.access.redhat.com +ARG BASE_REGISTRY=registry1.dsop.io +#ARG BASE_REGISTRY=registry.access.redhat.com ARG BASE_IMAGE=ubi8 ARG BASE_TAG=8.2 FROM ${BASE_REGISTRY}/${BASE_IMAGE}:${BASE_TAG} as builder @@ -13,10 +13,10 @@ RUN dnf -y install python3 python3-devel python3-pip gcc cmake make && \ cp -af /usr/sbin/policy-rc.d /sbin/initctl && \ sed -i 's/^exit.*/exit 0/' /sbin/initctl RUN mkdir -p /root/pip_pkgs -COPY pip_pkgs/*.whl /root/pip_pkgs/ -COPY pip_pkgs/*.tar.gz /root/pip_pkgs/ -#COPY *.whl /root/pip_pkgs/ -#COPY *.tar.gz /root/pip_pkgs/ +#COPY pip_pkgs/*.whl /root/pip_pkgs/ +#COPY pip_pkgs/*.tar.gz /root/pip_pkgs/ +COPY *.whl /root/pip_pkgs/ +COPY *.tar.gz /root/pip_pkgs/ RUN pip3 --disable-pip-version-check install /root/pip_pkgs/pip-20.2.2-py2.py3-none-any.whl RUN pip3 --disable-pip-version-check install /root/pip_pkgs/termcolor-1.1.0.tar.gz RUN pip3 --disable-pip-version-check install /root/pip_pkgs/wrapt-1.11.1.tar.gz -- GitLab From aa1e0618b130ea035c6009c10895776f9bfa97c9 Mon Sep 17 00:00:00 2001 From: cvernooy Date: Fri, 25 Sep 2020 19:49:55 +0000 Subject: [PATCH 14/23] Update Dockerfile --- Dockerfile | 3 --- 1 file changed, 3 deletions(-) diff --git a/Dockerfile b/Dockerfile index 4ed7fd8..8d77e50 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,6 +1,5 @@ #create dev image ARG BASE_REGISTRY=registry1.dsop.io -#ARG BASE_REGISTRY=registry.access.redhat.com ARG BASE_IMAGE=ubi8 ARG BASE_TAG=8.2 FROM ${BASE_REGISTRY}/${BASE_IMAGE}:${BASE_TAG} as builder @@ -13,8 +12,6 @@ RUN dnf -y install python3 python3-devel python3-pip gcc cmake make && \ cp -af /usr/sbin/policy-rc.d /sbin/initctl && \ sed -i 's/^exit.*/exit 0/' /sbin/initctl RUN mkdir -p /root/pip_pkgs -#COPY pip_pkgs/*.whl /root/pip_pkgs/ -#COPY pip_pkgs/*.tar.gz /root/pip_pkgs/ COPY *.whl /root/pip_pkgs/ COPY *.tar.gz /root/pip_pkgs/ RUN pip3 --disable-pip-version-check install /root/pip_pkgs/pip-20.2.2-py2.py3-none-any.whl -- GitLab From 47d5bd09b9a52a433fc99c0c2310266dceb05d2e Mon Sep 17 00:00:00 2001 From: cvernooy Date: Fri, 25 Sep 2020 19:50:38 +0000 Subject: [PATCH 15/23] Add new file --- LICENSE | 203 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 203 insertions(+) create mode 100644 LICENSE diff --git a/LICENSE b/LICENSE new file mode 100644 index 0000000..a6b1b1f --- /dev/null +++ b/LICENSE @@ -0,0 +1,203 @@ +Copyright 2019 The TensorFlow Authors. All rights reserved. + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. \ No newline at end of file -- GitLab From 1e7cc1e64b701dc2b378b3db1639b5519bb96ae4 Mon Sep 17 00:00:00 2001 From: jeason Date: Wed, 14 Oct 2020 13:43:11 -0600 Subject: [PATCH 16/23] Project template: file templates --- .gitlab/CODEOWNERS | 6 +++ .gitlab/issue_templates/Access Request.md | 16 ++++++++ .../issue_templates/Application - Archive.md | 21 +++++++++++ .../issue_templates/Application - Initial.md | 32 ++++++++++++++++ .../issue_templates/Application - Update.md | 35 ++++++++++++++++++ .gitlab/issue_templates/Bug.md | 37 +++++++++++++++++++ .gitlab/issue_templates/Feature Request.md | 32 ++++++++++++++++ .../issue_templates/Leadership Question.md | 7 ++++ .gitlab/issue_templates/New Findings.md | 20 ++++++++++ .../issue_templates/Onboarding Question.md | 7 ++++ .gitlab/issue_templates/Pipeline Failure.md | 31 ++++++++++++++++ 11 files changed, 244 insertions(+) create mode 100644 .gitlab/CODEOWNERS create mode 100644 .gitlab/issue_templates/Access Request.md create mode 100644 .gitlab/issue_templates/Application - Archive.md create mode 100644 .gitlab/issue_templates/Application - Initial.md create mode 100644 .gitlab/issue_templates/Application - Update.md create mode 100644 .gitlab/issue_templates/Bug.md create mode 100644 .gitlab/issue_templates/Feature Request.md create mode 100644 .gitlab/issue_templates/Leadership Question.md create mode 100644 .gitlab/issue_templates/New Findings.md create mode 100644 .gitlab/issue_templates/Onboarding Question.md create mode 100644 .gitlab/issue_templates/Pipeline Failure.md diff --git a/.gitlab/CODEOWNERS b/.gitlab/CODEOWNERS new file mode 100644 index 0000000..64a2c68 --- /dev/null +++ b/.gitlab/CODEOWNERS @@ -0,0 +1,6 @@ +[Pipelines] +.gitlab-ci.yml @ironbank-notifications/cht +.gitlab-ci.yaml @ironbank-notifications/cht + +[Gitlab Configuration Files] +.gitlab/* @ironbank-notifications/cht diff --git a/.gitlab/issue_templates/Access Request.md b/.gitlab/issue_templates/Access Request.md new file mode 100644 index 0000000..1a7b224 --- /dev/null +++ b/.gitlab/issue_templates/Access Request.md @@ -0,0 +1,16 @@ +## Summary + +The following individuals are requesting access to this project (one per line): +(List or tag all individuals here) + + +The access level should be: +- [ ] Developer access +- [ ] Remove access + + +## Definition of Done +- [ ] All accounts have been provided the necessary accesses + + +/label ~"Access" ~"To Do" \ No newline at end of file diff --git a/.gitlab/issue_templates/Application - Archive.md b/.gitlab/issue_templates/Application - Archive.md new file mode 100644 index 0000000..9f3b5fe --- /dev/null +++ b/.gitlab/issue_templates/Application - Archive.md @@ -0,0 +1,21 @@ +## Summary + +Requesting this application be archived due to one of the following reasons: +- [ ] Version is no longer supported by vendor +- [ ] Application is End-Of-Life +- [ ] License violation. +- [ ] Other. See below. + +## Detailed Description + +(Please provide a detailed description of why this application should be archived) + + +## Definition of Done +- [ ] Application has been reviewed for archival +- [ ] Project is officially marked as stale +- [ ] Iron Bank frontend no longer lists application as available or approved + + +/label ~"Container::Archive" +/cc @ironbank-notifications/archive \ No newline at end of file diff --git a/.gitlab/issue_templates/Application - Initial.md b/.gitlab/issue_templates/Application - Initial.md new file mode 100644 index 0000000..6594a05 --- /dev/null +++ b/.gitlab/issue_templates/Application - Initial.md @@ -0,0 +1,32 @@ +## Summary + +Requesting application to be hardened. This is only for initial hardening of a container. + + +## Version Information + +Current version: (State the current version of the application as you see it) + +Under support: (Is the updated version within the same major version of the application or is this a new major version?) + + +## Definition of Done +Hardening: +- [ ] Container builds successfully +- [ ] Greylist file has been created (requires a member from container hardening) +- [ ] Branch has been merged into `development` + +Justifications: +- [ ] All findings have been justified per the above documentation +- [ ] Justifications have been provided to the container hardening team + +Approval Process (container hardening team processes): +- [ ] Peer review from Container Hardening Team +- [ ] Findings Approver has reviewed and approved all justifications +- [ ] Approval request has been sent to Authorizing Official +- [ ] Approval request has been processed by Authorizing Official + + + +/label ~"Container::Initial" +/cc @ironbank-notifications/cht \ No newline at end of file diff --git a/.gitlab/issue_templates/Application - Update.md b/.gitlab/issue_templates/Application - Update.md new file mode 100644 index 0000000..caebb3e --- /dev/null +++ b/.gitlab/issue_templates/Application - Update.md @@ -0,0 +1,35 @@ +## Summary + +Requesting application be updated to a newer version. + + + +## Version Information + +Current version: (State the current version of the application as you see it) + +Updated version: (State the version you would like the application updated to) + +Under support: (Is the updated version within the same major version of the application or is this a new major version?) + + +## Definition of Done +Hardening: +- [ ] Container builds successfully +- [ ] Container version has been updated in greylist file +- [ ] Branch has been merged into `development` + +Justifications: +- [ ] All findings have been justified per the above documentation +- [ ] Justifications have been provided to the container hardening team + +Approval Process: +- [ ] Peer review from Container Hardening Team +- [ ] Findings Approver has reviewed and approved all justifications +- [ ] Approval request has been sent to Authorizing Official +- [ ] Approval request has been processed by Authorizing Official + + + +/label ~"Container::Update" +/cc @ironbank-notifications/updates \ No newline at end of file diff --git a/.gitlab/issue_templates/Bug.md b/.gitlab/issue_templates/Bug.md new file mode 100644 index 0000000..1427a0c --- /dev/null +++ b/.gitlab/issue_templates/Bug.md @@ -0,0 +1,37 @@ +## Summary + +(Summarize the bug encountered concisely) + + +## Steps to reproduce + +(How one can reproduce the issue - this is very important) + + +## What is the current bug behavior? + +(What actually happens) + + +## What is the expected correct behavior? + +(What you should see instead) + + +## Relevant logs and/or screenshots + +(Paste any relevant logs - please use code blocks (```) to format console output, +logs, and code as it's very hard to read otherwise.) + + +## Possible fixes + +(If you can, link to the line of code that might be responsible for the problem) + + +## Defintion of Done +- [ ] Bug has been identified and corrected within the container + + +/label ~Bug +/cc @ironbank-notifications/bug \ No newline at end of file diff --git a/.gitlab/issue_templates/Feature Request.md b/.gitlab/issue_templates/Feature Request.md new file mode 100644 index 0000000..a0e2f19 --- /dev/null +++ b/.gitlab/issue_templates/Feature Request.md @@ -0,0 +1,32 @@ +## Feature description + +(Detailed description of the feature being requested) + + +## Use cases + + +(Detailed description of the use case for this feature) + + +## Benefits + +(How does this benefit others) + + +## Requirements + +(Any requirements for this feature to be enabled?) + + +## Links / references + +(List of links or references that support this feature) + + +## Definition of Done +- [ ] Feature has been implemented + + +/label ~Feature +/cc @ironbank-notifications/feature \ No newline at end of file diff --git a/.gitlab/issue_templates/Leadership Question.md b/.gitlab/issue_templates/Leadership Question.md new file mode 100644 index 0000000..4674f82 --- /dev/null +++ b/.gitlab/issue_templates/Leadership Question.md @@ -0,0 +1,7 @@ +## Leadership question + +(Detailed description of the question you'd like to ask the leadership team) + + +/label ~"Question::Leadership" ~"To Do" +/cc @ironbank-notifications/leadership \ No newline at end of file diff --git a/.gitlab/issue_templates/New Findings.md b/.gitlab/issue_templates/New Findings.md new file mode 100644 index 0000000..068d029 --- /dev/null +++ b/.gitlab/issue_templates/New Findings.md @@ -0,0 +1,20 @@ +## Summary + +Container has new findings discovered during continuous monitoring. + + + +## Definition of Done +Justifications: +- [ ] All findings have been justified +- [ ] Justifications have been provided to the container hardening team + +Approval Process: +- [ ] Findings Approver has reviewed and approved all justifications +- [ ] Approval request has been sent to Authorizing Official +- [ ] Approval request has been processed by Authorizing Official + + + +/label ~"Container::New Findings" +/cc @ironbank-notifications/security \ No newline at end of file diff --git a/.gitlab/issue_templates/Onboarding Question.md b/.gitlab/issue_templates/Onboarding Question.md new file mode 100644 index 0000000..77dea11 --- /dev/null +++ b/.gitlab/issue_templates/Onboarding Question.md @@ -0,0 +1,7 @@ +## Onboarding question + +(Detailed description of the question you'd like to ask the onboarding team) + + +/label ~"Question::Onboarding" ~"To Do" +/cc @ironbank-notifications/onboarding \ No newline at end of file diff --git a/.gitlab/issue_templates/Pipeline Failure.md b/.gitlab/issue_templates/Pipeline Failure.md new file mode 100644 index 0000000..28b82a9 --- /dev/null +++ b/.gitlab/issue_templates/Pipeline Failure.md @@ -0,0 +1,31 @@ +## Summary + +(Summarize the pipeline issue encountered concisely) + + +## Link to failed pipeline + +(Link to the failed pipeline) + + +## What is the current bug behavior? + +(What actually happens) + + +## What is the expected correct behavior? + +(What you should see instead) + + +## Possible fixes + +(If you can, link to the line of code that might be responsible for the problem) + + +## Definition of Done +- [ ] Pipeline failure has been resolved + + +/label ~Pipeline +/cc @ironbank-notifications/pipelines \ No newline at end of file -- GitLab From 3658268805e989efdd8f0830de2ea4664ac4008e Mon Sep 17 00:00:00 2001 From: ironbank-bot Date: Thu, 10 Dec 2020 01:19:16 +0000 Subject: [PATCH 17/23] Migrate to hardening_manifest.yaml --- Dockerfile | 6 - Jenkinsfile | 2 - download.yaml | 192 ------------------------------- hardening_manifest.yaml | 243 ++++++++++++++++++++++++++++++++++++++++ 4 files changed, 243 insertions(+), 200 deletions(-) delete mode 100644 Jenkinsfile delete mode 100644 download.yaml create mode 100644 hardening_manifest.yaml diff --git a/Dockerfile b/Dockerfile index 8d77e50..1658749 100644 --- a/Dockerfile +++ b/Dockerfile @@ -21,12 +21,6 @@ RUN pip3 --disable-pip-version-check install /root/pip_pkgs/* ENV LANG C.UTF-8 ##make final image FROM ${BASE_REGISTRY}/${BASE_IMAGE}:${BASE_TAG} -LABEL org.opencontainers.image.title="tensorflow" \ - org.opencontainers.image.description="ternserflow 2.2.0 container based off UBI 8" \ - org.opencontainers.image.licenses="Apache-2.0" \ - org.opencontainers.image.url="https://hub.docker.com/layers/tensorflow/tensorflow/2.2.0/images/sha256-08901711826b185136886c7b8271b9fdbe86b8ccb598669781a1f5cb340184eb?context=explore" \ - org.opencontainers.image.version="2.2.0" \ - maintainer="cvernooy@oteemo.com" ENV LANG C.UTF-8 ##systemd stuff aken from upstream public container history of the Ubuntu build, not sure if it's required here RUN mkdir -p /run/systemd && \ diff --git a/Jenkinsfile b/Jenkinsfile deleted file mode 100644 index 9e40e75..0000000 --- a/Jenkinsfile +++ /dev/null @@ -1,2 +0,0 @@ -@Library('DCCSCR@master') _ -dccscrPipeline(version: '2.2.0') diff --git a/download.yaml b/download.yaml deleted file mode 100644 index 5304a14..0000000 --- a/download.yaml +++ /dev/null @@ -1,192 +0,0 @@ ---- -resources: - - url: "https://files.pythonhosted.org/packages/8a/48/a76be51647d0eb9f10e2a4511bf3ffb8cc1e6b14e9e4fab46173aa79f981/termcolor-1.1.0.tar.gz" - filename: "termcolor-1.1.0.tar.gz" - validation: - type: "sha256" - value: "1d6d69ce66211143803fbc56652b41d73b4a400a2891d7bf7a1cdf4c02de613b" - - url: "https://files.pythonhosted.org/packages/67/b2/0f71ca90b0ade7fad27e3d20327c996c6252a2ffe88f50a95bba7434eda9/wrapt-1.11.1.tar.gz" - filename: "wrapt-1.11.1.tar.gz" - validation: - type: "sha256" - value: "4aea003270831cceb8a90ff27c4031da6ead7ec1886023b80ce0dfe0adf61533" - - url: "https://files.pythonhosted.org/packages/79/4c/7c3275a01e12ef9368a892926ab932b33bb13d55794881e3573482b378a7/Keras_Preprocessing-1.1.2-py2.py3-none-any.whl" - filename: "Keras_Preprocessing-1.1.2-py2.py3-none-any.whl" - validation: - type: "sha256" - value: "7b82029b130ff61cc99b55f3bd27427df4838576838c5b2f65940e4fcec99a7b" - - url: "https://files.pythonhosted.org/packages/a4/63/eaec2bd025ab48c754b55e8819af0f6a69e2b1e187611dd40cbbe101ee7f/Markdown-3.2.2-py3-none-any.whl" - filename: "Markdown-3.2.2-py3-none-any.whl" - validation: - type: "sha256" - value: "c467cd6233885534bf0fe96e62e3cf46cfc1605112356c4f9981512b8174de59" - - url: "https://files.pythonhosted.org/packages/cc/94/5f7079a0e00bd6863ef8f1da638721e9da21e5bacee597595b318f71d62e/Werkzeug-1.0.1-py2.py3-none-any.whl" - filename: "Werkzeug-1.0.1-py2.py3-none-any.whl" - validation: - type: "sha256" - value: "2de2a5db0baeae7b2d2664949077c2ac63fbd16d98da0ff71837f7d1dea3fd43" - - url: "https://files.pythonhosted.org/packages/b9/07/f69dd3367368ad69f174bfe426a973651412ec11d48ec05c000f19fe0561/absl_py-0.10.0-py3-none-any.whl" - filename: "absl_py-0.10.0-py3-none-any.whl" - validation: - type: "sha256" - value: "ea07d7d437798bffc14f39fccec3909d251a1e76e233205ded72b71c267e0178" - - url: "https://files.pythonhosted.org/packages/2b/03/13dde6512ad7b4557eb792fbcf0c653af6076b81e5941d36ec61f7ce6028/astunparse-1.6.3-py2.py3-none-any.whl" - filename: "astunparse-1.6.3-py2.py3-none-any.whl" - validation: - type: "sha256" - value: "c2652417f2c8b5bb325c885ae329bdf3f86424075c4fd1a128674bc6fba4b8e8" - - url: "https://files.pythonhosted.org/packages/cd/5c/f3aa86b6d5482f3051b433c7616668a9b96fbe49a622210e2c9781938a5c/cachetools-4.1.1-py3-none-any.whl" - filename: "cachetools-4.1.1-py3-none-any.whl" - validation: - type: "sha256" - value: "513d4ff98dd27f85743a8dc0e92f55ddb1b49e060c2d5961512855cda2c01a98" - - url: "https://files.pythonhosted.org/packages/5e/c4/6c4fe722df5343c33226f0b4e0bb042e4dc13483228b4718baf286f86d87/certifi-2020.6.20-py2.py3-none-any.whl" - filename: "certifi-2020.6.20-py2.py3-none-any.whl" - validation: - type: "sha256" - value: "8fc0819f1f30ba15bdb34cceffb9ef04d99f420f68eb75d901e9560b8749fc41" - - url: "https://files.pythonhosted.org/packages/bc/a9/01ffebfb562e4274b6487b4bb1ddec7ca55ec7510b22e4c51f14098443b8/chardet-3.0.4-py2.py3-none-any.whl" - filename: "chardet-3.0.4-py2.py3-none-any.whl" - validation: - type: "sha256" - value: "fc323ffcaeaed0e0a02bf4d117757b98aed530d9ed4531e3e15460124c106691" - - url: "https://files.pythonhosted.org/packages/d6/84/759f5dd23fec8ba71952d97bcc7e2c9d7d63bdc582421f3cd4be845f0c98/gast-0.3.3-py2.py3-none-any.whl" - filename: "gast-0.3.3-py2.py3-none-any.whl" - validation: - type: "sha256" - value: "8f46f5be57ae6889a4e16e2ca113b1703ef17f2b0abceb83793eaba9e1351a45" - - url: "https://files.pythonhosted.org/packages/0f/79/4c59796bb02535aee5e5d2e2c5e16008aaf48903c2ec2ff566a2774bb3e0/google_auth-1.20.1-py2.py3-none-any.whl" - filename: "google_auth-1.20.1-py2.py3-none-any.whl" - validation: - type: "sha256" - value: "ce1fb80b5c6d3dd038babcc43e221edeafefc72d983b3dc28b67b996f76f00b9" - - url: "https://files.pythonhosted.org/packages/7b/b8/88def36e74bee9fce511c9519571f4e485e890093ab7442284f4ffaef60b/google_auth_oauthlib-0.4.1-py2.py3-none-any.whl" - filename: "google_auth_oauthlib-0.4.1-py2.py3-none-any.whl" - validation: - type: "sha256" - value: "a92a0f6f41a0fb6138454fbc02674e64f89d82a244ea32f98471733c8ef0e0e1" - - url: "https://files.pythonhosted.org/packages/a3/de/c648ef6835192e6e2cc03f40b19eeda4382c49b5bafb43d88b931c4c74ac/google_pasta-0.2.0-py3-none-any.whl" - filename: "google_pasta-0.2.0-py3-none-any.whl" - validation: - type: "sha256" - value: "b32482794a366b5366a32c92a9a9201b107821889935a02b3e51f6b432ea84ed" - - url: "https://files.pythonhosted.org/packages/2f/48/5aae2b4f415cdab711ec9ec762f433b5d55184ec6e91afa3bc1092d1d0ab/grpcio-1.31.0-cp36-cp36m-manylinux2010_x86_64.whl" - filename: "grpcio-1.31.0-cp36-cp36m-manylinux2014_x86_64.whl" - validation: - type: "sha256" - value: "259240aab2603891553e17ad5b2655693df79e02a9b887ff605bdeb2fcd3dcc9" - - url: "https://files.pythonhosted.org/packages/5a/4a/39400ff9b36e719bdf8f31c99fe1fa7842a42fa77432e584f707a5080063/pip-20.2.2-py2.py3-none-any.whl" - filename: "pip-20.2.2-py2.py3-none-any.whl" - validation: - type: "sha256" - value: "5244e51494f5d1dfbb89da492d4250cb07f9246644736d10ed6c45deb1a48500" - - url: "https://files.pythonhosted.org/packages/60/06/cafdd44889200e5438b897388f3075b52a8ef01f28a17366d91de0fa2d05/h5py-2.10.0-cp36-cp36m-manylinux1_x86_64.whl" - filename: "h5py-2.10.0-cp36-cp36m-manylinux1_x86_64.whl" - validation: - type: "sha256" - value: "d3c59549f90a891691991c17f8e58c8544060fdf3ccdea267100fa5f561ff62f" - - url: "https://files.pythonhosted.org/packages/a2/38/928ddce2273eaa564f6f50de919327bf3a00f091b5baba8dfa9460f3a8a8/idna-2.10-py2.py3-none-any.whl" - filename: "idna-2.10-py2.py3-none-any.whl" - validation: - type: "sha256" - value: "b97d804b1e9b523befed77c48dacec60e6dcb0b5391d57af6a65a312a90648c0" - - url: "https://files.pythonhosted.org/packages/8e/58/cdea07eb51fc2b906db0968a94700866fc46249bdc75cac23f9d13168929/importlib_metadata-1.7.0-py2.py3-none-any.whl" - filename: "importlib_metadata-1.7.0-py2.py3-none-any.whl" - validation: - type: "sha256" - value: "dc15b2969b4ce36305c51eebe62d418ac7791e9a157911d58bfb1f9ccd8e2070" - - url: "https://files.pythonhosted.org/packages/22/e7/4b2bdddb99f5f631d8c1de259897c2b7d65dcfcc1e0a6fd17a7f62923500/numpy-1.19.1-cp36-cp36m-manylinux1_x86_64.whl" - filename: "numpy-1.19.1-cp36-cp36m-manylinux2010_x86_64.whl" - validation: - type: "sha256" - value: "cf1347450c0b7644ea142712619533553f02ef23f92f781312f6a3553d031fc7" - - url: "https://files.pythonhosted.org/packages/05/57/ce2e7a8fa7c0afb54a0581b14a65b56e62b5759dbc98e80627142b8a3704/oauthlib-3.1.0-py2.py3-none-any.whl" - filename: "oauthlib-3.1.0-py2.py3-none-any.whl" - validation: - type: "sha256" - value: "df884cd6cbe20e32633f1db1072e9356f53638e4361bef4e8b03c9127c9328ea" - - url: "https://files.pythonhosted.org/packages/bc/19/404708a7e54ad2798907210462fd950c3442ea51acc8790f3da48d2bee8b/opt_einsum-3.3.0-py3-none-any.whl" - filename: "opt_einsum-3.3.0-py3-none-any.whl" - validation: - type: "sha256" - value: "2455e59e3947d3c275477df7f5205b30635e266fe6dc300e3d9f9646bfcea147" - - url: "https://files.pythonhosted.org/packages/3b/ba/276d817d4b0184e544a9295e14e95f6148af5c5652033d30eb63d2c13bfa/protobuf-3.13.0-py2.py3-none-any.whl" - filename: "protobuf-3.13.0-py2.py3-none-any.whl" - validation: - type: "sha256" - value: "d69697acac76d9f250ab745b46c725edf3e98ac24763990b24d58c16c642947a" - - url: "https://files.pythonhosted.org/packages/62/1e/a94a8d635fa3ce4cfc7f506003548d0a2447ae76fd5ca53932970fe3053f/pyasn1-0.4.8-py2.py3-none-any.whl" - filename: "pyasn1-0.4.8-py2.py3-none-any.whl" - validation: - type: "sha256" - value: "39c7e2ec30515947ff4e87fb6f456dfc6e84857d34be479c9d4a4ba4bf46aa5d" - - url: "https://files.pythonhosted.org/packages/95/de/214830a981892a3e286c3794f41ae67a4495df1108c3da8a9f62159b9a9d/pyasn1_modules-0.2.8-py2.py3-none-any.whl" - filename: "pyasn1_modules-0.2.8-py2.py3-none-any.whl" - validation: - type: "sha256" - value: "a50b808ffeb97cb3601dd25981f6b016cbb3d31fbf57a8b8a87428e6158d0c74" - - url: "https://files.pythonhosted.org/packages/45/1e/0c169c6a5381e241ba7404532c16a21d86ab872c9bed8bdcd4c423954103/requests-2.24.0-py2.py3-none-any.whl" - filename: "requests-2.24.0-py2.py3-none-any.whl" - validation: - type: "sha256" - value: "fe75cc94a9443b9246fc7049224f75604b113c36acb93f87b80ed42c44cbb898" - - url: "https://files.pythonhosted.org/packages/a3/12/b92740d845ab62ea4edf04d2f4164d82532b5a0b03836d4d4e71c6f3d379/requests_oauthlib-1.3.0-py2.py3-none-any.whl" - filename: "requests_oauthlib-1.3.0-py2.py3-none-any.whl" - validation: - type: "sha256" - value: "7f71572defaecd16372f9006f33c2ec8c077c3cfa6f5911a9a90202beb513f3d" - - url: "https://files.pythonhosted.org/packages/1c/df/c3587a667d6b308fadc90b99e8bc8774788d033efcc70f4ecaae7fad144b/rsa-4.6-py3-none-any.whl" - filename: "rsa-4.6-py3-none-any.whl" - validation: - type: "sha256" - value: "6166864e23d6b5195a5cfed6cd9fed0fe774e226d8f854fcb23b7bbef0350233" - - url: "https://files.pythonhosted.org/packages/dc/29/162476fd44203116e7980cfbd9352eef9db37c49445d1fec35509022f6aa/scipy-1.4.1-cp36-cp36m-manylinux1_x86_64.whl" - filename: "scipy-1.4.1-cp36-cp36m-manylinux1_x86_64.whl" - validation: - type: "sha256" - value: "386086e2972ed2db17cebf88610aab7d7f6e2c0ca30042dc9a89cf18dcc363fa" - - url: "https://files.pythonhosted.org/packages/c3/a9/5dc32465951cf4812e9e93b4ad2d314893c2fa6d5f66ce5c057af6e76d85/setuptools-49.6.0-py3-none-any.whl" - filename: "setuptools-49.6.0-py3-none-any.whl" - validation: - type: "sha256" - value: "4dd5bb0a0a0cff77b46ca5dd3a84857ee48c83e8223886b556613c724994073f" - - url: "https://files.pythonhosted.org/packages/ee/ff/48bde5c0f013094d729fe4b0316ba2a24774b3ff1c52d924a8a4cb04078a/six-1.15.0-py2.py3-none-any.whl" - filename: "six-1.15.0-py2.py3-none-any.whl" - validation: - type: "sha256" - value: "8b74bedcbbbaca38ff6d7491d76f2b06b3592611af620f8426e82dddb04a5ced" - - url: "https://files.pythonhosted.org/packages/1d/74/0a6fcb206dcc72a6da9a62dd81784bfdbff5fedb099982861dc2219014fb/tensorboard-2.2.2-py3-none-any.whl" - filename: "tensorboard-2.2.2-py3-none-any.whl" - validation: - type: "sha256" - value: "a3feb73e1221c0a512398ad2cd08570fb082d8a2ba364aa0562543ecbd3659ef" - - url: "https://files.pythonhosted.org/packages/b6/85/5c5ac0a8c5efdfab916e9c6bc18963f6a6996a8a1e19ec4ad8c9ac9c623c/tensorboard_plugin_wit-1.7.0-py3-none-any.whl" - filename: "tensorboard_plugin_wit-1.7.0-py3-none-any.whl" - validation: - type: "sha256" - value: "ee775f04821185c90d9a0e9c56970ee43d7c41403beb6629385b39517129685b" - - url: "https://files.pythonhosted.org/packages/3d/be/679ce5254a8c8d07470efb4a4c00345fae91f766e64f1c2aece8796d7218/tensorflow-2.2.0-cp36-cp36m-manylinux2010_x86_64.whl" - filename: "tensorflow-2.2.0-cp36-cp36m-manylinux2010_x86_64.whl" - validation: - type: "sha256" - value: "dc5548562308acde7931f040e73d46ae31b398924cf675c3486fd3504e00a4af" - - url: "https://files.pythonhosted.org/packages/a4/f5/926ae53d6a226ec0fda5208e0e581cffed895ccc89e36ba76a8e60895b78/tensorflow_estimator-2.2.0-py2.py3-none-any.whl" - filename: "tensorflow_estimator-2.2.0-py2.py3-none-any.whl" - validation: - type: "sha256" - value: "d09dacdd127f2579cea8d5af21f4a918036b8ae246adc82f26b61f91cc247dc2" - - url: "https://files.pythonhosted.org/packages/9f/f0/a391d1463ebb1b233795cabfc0ef38d3db4442339de68f847026199e69d7/urllib3-1.25.10-py2.py3-none-any.whl" - filename: "urllib3-1.25.10-py2.py3-none-any.whl" - validation: - type: "sha256" - value: "e7983572181f5e1522d9c98453462384ee92a0be7fac5f1413a1e35c56cc0461" - - url: "https://files.pythonhosted.org/packages/a7/00/3df031b3ecd5444d572141321537080b40c1c25e1caa3d86cdd12e5e919c/wheel-0.35.1-py2.py3-none-any.whl" - filename: "wheel-0.35.1-py2.py3-none-any.whl" - validation: - type: "sha256" - value: "497add53525d16c173c2c1c733b8f655510e909ea78cc0e29d374243544b77a2" - - url: "https://files.pythonhosted.org/packages/b2/34/bfcb43cc0ba81f527bc4f40ef41ba2ff4080e047acb0586b56b3d017ace4/zipp-3.1.0-py3-none-any.whl" - filename: "zipp-3.1.0-py3-none-any.whl" - validation: - type: "sha256" - value: "aa36550ff0c0b7ef7fa639055d797116ee891440eac1a56f378e2d3179e0320b" diff --git a/hardening_manifest.yaml b/hardening_manifest.yaml new file mode 100644 index 0000000..bbb911f --- /dev/null +++ b/hardening_manifest.yaml @@ -0,0 +1,243 @@ +--- +apiVersion: v1 + +# The repository name in registry1, excluding /ironbank/ +name: "opensource/tensorflow/tensorflow-2.2.0" + +# List of tags to push for the repository in registry1 +# The most specific version should be the first tag and will be shown +# on ironbank.dsop.io +tags: +- "2.2.0" +- "latest" + +# Build args passed to Dockerfile ARGs +args: + BASE_IMAGE: "redhat/ubi/ubi8" + BASE_TAG: "8.3" + +# Docker image labels +labels: + org.opencontainers.image.title: "tensorflow-2.2.0" + ## Human-readable description of the software packaged in the image + # org.opencontainers.image.description: "FIXME" + ## License(s) under which contained software is distributed + # org.opencontainers.image.licenses: "FIXME" + ## URL to find more information on the image + # org.opencontainers.image.url: "FIXME" + ## Name of the distributing entity, organization or individual + # org.opencontainers.image.vendor: "FIXME" + org.opencontainers.image.version: "2.2.0" + ## Keywords to help with search (ex. "cicd,gitops,golang") + # mil.dso.ironbank.image.keywords: "FIXME" + ## This value can be "opensource" or "commercial" + # mil.dso.ironbank.image.type: "FIXME" + ## Product the image belongs to for grouping multiple images + # mil.dso.ironbank.product.name: "FIXME" + +# List of resources to make available to the offline build context +resources: +- filename: termcolor-1.1.0.tar.gz + url: https://files.pythonhosted.org/packages/8a/48/a76be51647d0eb9f10e2a4511bf3ffb8cc1e6b14e9e4fab46173aa79f981/termcolor-1.1.0.tar.gz + validation: + type: sha256 + value: 1d6d69ce66211143803fbc56652b41d73b4a400a2891d7bf7a1cdf4c02de613b +- filename: wrapt-1.11.1.tar.gz + url: https://files.pythonhosted.org/packages/67/b2/0f71ca90b0ade7fad27e3d20327c996c6252a2ffe88f50a95bba7434eda9/wrapt-1.11.1.tar.gz + validation: + type: sha256 + value: 4aea003270831cceb8a90ff27c4031da6ead7ec1886023b80ce0dfe0adf61533 +- filename: Keras_Preprocessing-1.1.2-py2.py3-none-any.whl + url: https://files.pythonhosted.org/packages/79/4c/7c3275a01e12ef9368a892926ab932b33bb13d55794881e3573482b378a7/Keras_Preprocessing-1.1.2-py2.py3-none-any.whl + validation: + type: sha256 + value: 7b82029b130ff61cc99b55f3bd27427df4838576838c5b2f65940e4fcec99a7b +- filename: Markdown-3.2.2-py3-none-any.whl + url: https://files.pythonhosted.org/packages/a4/63/eaec2bd025ab48c754b55e8819af0f6a69e2b1e187611dd40cbbe101ee7f/Markdown-3.2.2-py3-none-any.whl + validation: + type: sha256 + value: c467cd6233885534bf0fe96e62e3cf46cfc1605112356c4f9981512b8174de59 +- filename: Werkzeug-1.0.1-py2.py3-none-any.whl + url: https://files.pythonhosted.org/packages/cc/94/5f7079a0e00bd6863ef8f1da638721e9da21e5bacee597595b318f71d62e/Werkzeug-1.0.1-py2.py3-none-any.whl + validation: + type: sha256 + value: 2de2a5db0baeae7b2d2664949077c2ac63fbd16d98da0ff71837f7d1dea3fd43 +- filename: absl_py-0.10.0-py3-none-any.whl + url: https://files.pythonhosted.org/packages/b9/07/f69dd3367368ad69f174bfe426a973651412ec11d48ec05c000f19fe0561/absl_py-0.10.0-py3-none-any.whl + validation: + type: sha256 + value: ea07d7d437798bffc14f39fccec3909d251a1e76e233205ded72b71c267e0178 +- filename: astunparse-1.6.3-py2.py3-none-any.whl + url: https://files.pythonhosted.org/packages/2b/03/13dde6512ad7b4557eb792fbcf0c653af6076b81e5941d36ec61f7ce6028/astunparse-1.6.3-py2.py3-none-any.whl + validation: + type: sha256 + value: c2652417f2c8b5bb325c885ae329bdf3f86424075c4fd1a128674bc6fba4b8e8 +- filename: cachetools-4.1.1-py3-none-any.whl + url: https://files.pythonhosted.org/packages/cd/5c/f3aa86b6d5482f3051b433c7616668a9b96fbe49a622210e2c9781938a5c/cachetools-4.1.1-py3-none-any.whl + validation: + type: sha256 + value: 513d4ff98dd27f85743a8dc0e92f55ddb1b49e060c2d5961512855cda2c01a98 +- filename: certifi-2020.6.20-py2.py3-none-any.whl + url: https://files.pythonhosted.org/packages/5e/c4/6c4fe722df5343c33226f0b4e0bb042e4dc13483228b4718baf286f86d87/certifi-2020.6.20-py2.py3-none-any.whl + validation: + type: sha256 + value: 8fc0819f1f30ba15bdb34cceffb9ef04d99f420f68eb75d901e9560b8749fc41 +- filename: chardet-3.0.4-py2.py3-none-any.whl + url: https://files.pythonhosted.org/packages/bc/a9/01ffebfb562e4274b6487b4bb1ddec7ca55ec7510b22e4c51f14098443b8/chardet-3.0.4-py2.py3-none-any.whl + validation: + type: sha256 + value: fc323ffcaeaed0e0a02bf4d117757b98aed530d9ed4531e3e15460124c106691 +- filename: gast-0.3.3-py2.py3-none-any.whl + url: https://files.pythonhosted.org/packages/d6/84/759f5dd23fec8ba71952d97bcc7e2c9d7d63bdc582421f3cd4be845f0c98/gast-0.3.3-py2.py3-none-any.whl + validation: + type: sha256 + value: 8f46f5be57ae6889a4e16e2ca113b1703ef17f2b0abceb83793eaba9e1351a45 +- filename: google_auth-1.20.1-py2.py3-none-any.whl + url: https://files.pythonhosted.org/packages/0f/79/4c59796bb02535aee5e5d2e2c5e16008aaf48903c2ec2ff566a2774bb3e0/google_auth-1.20.1-py2.py3-none-any.whl + validation: + type: sha256 + value: ce1fb80b5c6d3dd038babcc43e221edeafefc72d983b3dc28b67b996f76f00b9 +- filename: google_auth_oauthlib-0.4.1-py2.py3-none-any.whl + url: https://files.pythonhosted.org/packages/7b/b8/88def36e74bee9fce511c9519571f4e485e890093ab7442284f4ffaef60b/google_auth_oauthlib-0.4.1-py2.py3-none-any.whl + validation: + type: sha256 + value: a92a0f6f41a0fb6138454fbc02674e64f89d82a244ea32f98471733c8ef0e0e1 +- filename: google_pasta-0.2.0-py3-none-any.whl + url: https://files.pythonhosted.org/packages/a3/de/c648ef6835192e6e2cc03f40b19eeda4382c49b5bafb43d88b931c4c74ac/google_pasta-0.2.0-py3-none-any.whl + validation: + type: sha256 + value: b32482794a366b5366a32c92a9a9201b107821889935a02b3e51f6b432ea84ed +- filename: grpcio-1.31.0-cp36-cp36m-manylinux2014_x86_64.whl + url: https://files.pythonhosted.org/packages/2f/48/5aae2b4f415cdab711ec9ec762f433b5d55184ec6e91afa3bc1092d1d0ab/grpcio-1.31.0-cp36-cp36m-manylinux2010_x86_64.whl + validation: + type: sha256 + value: 259240aab2603891553e17ad5b2655693df79e02a9b887ff605bdeb2fcd3dcc9 +- filename: pip-20.2.2-py2.py3-none-any.whl + url: https://files.pythonhosted.org/packages/5a/4a/39400ff9b36e719bdf8f31c99fe1fa7842a42fa77432e584f707a5080063/pip-20.2.2-py2.py3-none-any.whl + validation: + type: sha256 + value: 5244e51494f5d1dfbb89da492d4250cb07f9246644736d10ed6c45deb1a48500 +- filename: h5py-2.10.0-cp36-cp36m-manylinux1_x86_64.whl + url: https://files.pythonhosted.org/packages/60/06/cafdd44889200e5438b897388f3075b52a8ef01f28a17366d91de0fa2d05/h5py-2.10.0-cp36-cp36m-manylinux1_x86_64.whl + validation: + type: sha256 + value: d3c59549f90a891691991c17f8e58c8544060fdf3ccdea267100fa5f561ff62f +- filename: idna-2.10-py2.py3-none-any.whl + url: https://files.pythonhosted.org/packages/a2/38/928ddce2273eaa564f6f50de919327bf3a00f091b5baba8dfa9460f3a8a8/idna-2.10-py2.py3-none-any.whl + validation: + type: sha256 + value: b97d804b1e9b523befed77c48dacec60e6dcb0b5391d57af6a65a312a90648c0 +- filename: importlib_metadata-1.7.0-py2.py3-none-any.whl + url: https://files.pythonhosted.org/packages/8e/58/cdea07eb51fc2b906db0968a94700866fc46249bdc75cac23f9d13168929/importlib_metadata-1.7.0-py2.py3-none-any.whl + validation: + type: sha256 + value: dc15b2969b4ce36305c51eebe62d418ac7791e9a157911d58bfb1f9ccd8e2070 +- filename: numpy-1.19.1-cp36-cp36m-manylinux2010_x86_64.whl + url: https://files.pythonhosted.org/packages/22/e7/4b2bdddb99f5f631d8c1de259897c2b7d65dcfcc1e0a6fd17a7f62923500/numpy-1.19.1-cp36-cp36m-manylinux1_x86_64.whl + validation: + type: sha256 + value: cf1347450c0b7644ea142712619533553f02ef23f92f781312f6a3553d031fc7 +- filename: oauthlib-3.1.0-py2.py3-none-any.whl + url: https://files.pythonhosted.org/packages/05/57/ce2e7a8fa7c0afb54a0581b14a65b56e62b5759dbc98e80627142b8a3704/oauthlib-3.1.0-py2.py3-none-any.whl + validation: + type: sha256 + value: df884cd6cbe20e32633f1db1072e9356f53638e4361bef4e8b03c9127c9328ea +- filename: opt_einsum-3.3.0-py3-none-any.whl + url: https://files.pythonhosted.org/packages/bc/19/404708a7e54ad2798907210462fd950c3442ea51acc8790f3da48d2bee8b/opt_einsum-3.3.0-py3-none-any.whl + validation: + type: sha256 + value: 2455e59e3947d3c275477df7f5205b30635e266fe6dc300e3d9f9646bfcea147 +- filename: protobuf-3.13.0-py2.py3-none-any.whl + url: https://files.pythonhosted.org/packages/3b/ba/276d817d4b0184e544a9295e14e95f6148af5c5652033d30eb63d2c13bfa/protobuf-3.13.0-py2.py3-none-any.whl + validation: + type: sha256 + value: d69697acac76d9f250ab745b46c725edf3e98ac24763990b24d58c16c642947a +- filename: pyasn1-0.4.8-py2.py3-none-any.whl + url: https://files.pythonhosted.org/packages/62/1e/a94a8d635fa3ce4cfc7f506003548d0a2447ae76fd5ca53932970fe3053f/pyasn1-0.4.8-py2.py3-none-any.whl + validation: + type: sha256 + value: 39c7e2ec30515947ff4e87fb6f456dfc6e84857d34be479c9d4a4ba4bf46aa5d +- filename: pyasn1_modules-0.2.8-py2.py3-none-any.whl + url: https://files.pythonhosted.org/packages/95/de/214830a981892a3e286c3794f41ae67a4495df1108c3da8a9f62159b9a9d/pyasn1_modules-0.2.8-py2.py3-none-any.whl + validation: + type: sha256 + value: a50b808ffeb97cb3601dd25981f6b016cbb3d31fbf57a8b8a87428e6158d0c74 +- filename: requests-2.24.0-py2.py3-none-any.whl + url: https://files.pythonhosted.org/packages/45/1e/0c169c6a5381e241ba7404532c16a21d86ab872c9bed8bdcd4c423954103/requests-2.24.0-py2.py3-none-any.whl + validation: + type: sha256 + value: fe75cc94a9443b9246fc7049224f75604b113c36acb93f87b80ed42c44cbb898 +- filename: requests_oauthlib-1.3.0-py2.py3-none-any.whl + url: https://files.pythonhosted.org/packages/a3/12/b92740d845ab62ea4edf04d2f4164d82532b5a0b03836d4d4e71c6f3d379/requests_oauthlib-1.3.0-py2.py3-none-any.whl + validation: + type: sha256 + value: 7f71572defaecd16372f9006f33c2ec8c077c3cfa6f5911a9a90202beb513f3d +- filename: rsa-4.6-py3-none-any.whl + url: https://files.pythonhosted.org/packages/1c/df/c3587a667d6b308fadc90b99e8bc8774788d033efcc70f4ecaae7fad144b/rsa-4.6-py3-none-any.whl + validation: + type: sha256 + value: 6166864e23d6b5195a5cfed6cd9fed0fe774e226d8f854fcb23b7bbef0350233 +- filename: scipy-1.4.1-cp36-cp36m-manylinux1_x86_64.whl + url: https://files.pythonhosted.org/packages/dc/29/162476fd44203116e7980cfbd9352eef9db37c49445d1fec35509022f6aa/scipy-1.4.1-cp36-cp36m-manylinux1_x86_64.whl + validation: + type: sha256 + value: 386086e2972ed2db17cebf88610aab7d7f6e2c0ca30042dc9a89cf18dcc363fa +- filename: setuptools-49.6.0-py3-none-any.whl + url: https://files.pythonhosted.org/packages/c3/a9/5dc32465951cf4812e9e93b4ad2d314893c2fa6d5f66ce5c057af6e76d85/setuptools-49.6.0-py3-none-any.whl + validation: + type: sha256 + value: 4dd5bb0a0a0cff77b46ca5dd3a84857ee48c83e8223886b556613c724994073f +- filename: six-1.15.0-py2.py3-none-any.whl + url: https://files.pythonhosted.org/packages/ee/ff/48bde5c0f013094d729fe4b0316ba2a24774b3ff1c52d924a8a4cb04078a/six-1.15.0-py2.py3-none-any.whl + validation: + type: sha256 + value: 8b74bedcbbbaca38ff6d7491d76f2b06b3592611af620f8426e82dddb04a5ced +- filename: tensorboard-2.2.2-py3-none-any.whl + url: https://files.pythonhosted.org/packages/1d/74/0a6fcb206dcc72a6da9a62dd81784bfdbff5fedb099982861dc2219014fb/tensorboard-2.2.2-py3-none-any.whl + validation: + type: sha256 + value: a3feb73e1221c0a512398ad2cd08570fb082d8a2ba364aa0562543ecbd3659ef +- filename: tensorboard_plugin_wit-1.7.0-py3-none-any.whl + url: https://files.pythonhosted.org/packages/b6/85/5c5ac0a8c5efdfab916e9c6bc18963f6a6996a8a1e19ec4ad8c9ac9c623c/tensorboard_plugin_wit-1.7.0-py3-none-any.whl + validation: + type: sha256 + value: ee775f04821185c90d9a0e9c56970ee43d7c41403beb6629385b39517129685b +- filename: tensorflow-2.2.0-cp36-cp36m-manylinux2010_x86_64.whl + url: https://files.pythonhosted.org/packages/3d/be/679ce5254a8c8d07470efb4a4c00345fae91f766e64f1c2aece8796d7218/tensorflow-2.2.0-cp36-cp36m-manylinux2010_x86_64.whl + validation: + type: sha256 + value: dc5548562308acde7931f040e73d46ae31b398924cf675c3486fd3504e00a4af +- filename: tensorflow_estimator-2.2.0-py2.py3-none-any.whl + url: https://files.pythonhosted.org/packages/a4/f5/926ae53d6a226ec0fda5208e0e581cffed895ccc89e36ba76a8e60895b78/tensorflow_estimator-2.2.0-py2.py3-none-any.whl + validation: + type: sha256 + value: d09dacdd127f2579cea8d5af21f4a918036b8ae246adc82f26b61f91cc247dc2 +- filename: urllib3-1.25.10-py2.py3-none-any.whl + url: https://files.pythonhosted.org/packages/9f/f0/a391d1463ebb1b233795cabfc0ef38d3db4442339de68f847026199e69d7/urllib3-1.25.10-py2.py3-none-any.whl + validation: + type: sha256 + value: e7983572181f5e1522d9c98453462384ee92a0be7fac5f1413a1e35c56cc0461 +- filename: wheel-0.35.1-py2.py3-none-any.whl + url: https://files.pythonhosted.org/packages/a7/00/3df031b3ecd5444d572141321537080b40c1c25e1caa3d86cdd12e5e919c/wheel-0.35.1-py2.py3-none-any.whl + validation: + type: sha256 + value: 497add53525d16c173c2c1c733b8f655510e909ea78cc0e29d374243544b77a2 +- filename: zipp-3.1.0-py3-none-any.whl + url: https://files.pythonhosted.org/packages/b2/34/bfcb43cc0ba81f527bc4f40ef41ba2ff4080e047acb0586b56b3d017ace4/zipp-3.1.0-py3-none-any.whl + validation: + type: sha256 + value: aa36550ff0c0b7ef7fa639055d797116ee891440eac1a56f378e2d3179e0320b + +# List of project maintainers +# FIXME: Fill in the following details for the current container owner in the whitelist +# FIXME: Include any other vendor information if applicable +maintainers: +- email: "cvernooy@oteemo.com" +# # The name of the current container owner +# name: "FIXME" +# # The gitlab username of the current container owner +# username: "FIXME" +# cht_member: true # FIXME: Uncomment if the maintainer is a member of CHT +# - name: "FIXME" +# username: "FIXME" +# email: "FIXME" -- GitLab From cd25b1cda108c3fb8f29e1df5e423d61a4cac19e Mon Sep 17 00:00:00 2001 From: Olga O Date: Thu, 10 Dec 2020 17:49:53 -0600 Subject: [PATCH 18/23] added changes to hardening_manifest.yaml --- hardening_manifest.yaml | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/hardening_manifest.yaml b/hardening_manifest.yaml index bbb911f..f152e34 100644 --- a/hardening_manifest.yaml +++ b/hardening_manifest.yaml @@ -20,20 +20,20 @@ args: labels: org.opencontainers.image.title: "tensorflow-2.2.0" ## Human-readable description of the software packaged in the image - # org.opencontainers.image.description: "FIXME" + org.opencontainers.image.description: "ternserflow 2.2.0 container based off UBI 8" ## License(s) under which contained software is distributed - # org.opencontainers.image.licenses: "FIXME" + org.opencontainers.image.licenses: "Apache-2.0" ## URL to find more information on the image - # org.opencontainers.image.url: "FIXME" + org.opencontainers.image.url: "https://hub.docker.com/layers/tensorflow/tensorflow/2.2.0/images/sha256-08901711826b185136886c7b8271b9fdbe86b8ccb598669781a1f5cb340184eb?context=explore" ## Name of the distributing entity, organization or individual - # org.opencontainers.image.vendor: "FIXME" + org.opencontainers.image.vendor: "Apache" org.opencontainers.image.version: "2.2.0" ## Keywords to help with search (ex. "cicd,gitops,golang") - # mil.dso.ironbank.image.keywords: "FIXME" + mil.dso.ironbank.image.keywords: "FIXME" ## This value can be "opensource" or "commercial" - # mil.dso.ironbank.image.type: "FIXME" + mil.dso.ironbank.image.type: "opensource" ## Product the image belongs to for grouping multiple images - # mil.dso.ironbank.product.name: "FIXME" + mil.dso.ironbank.product.name: "FIXME" # List of resources to make available to the offline build context resources: @@ -234,10 +234,10 @@ resources: maintainers: - email: "cvernooy@oteemo.com" # # The name of the current container owner -# name: "FIXME" + name: "Christopher Vernooy" # # The gitlab username of the current container owner -# username: "FIXME" -# cht_member: true # FIXME: Uncomment if the maintainer is a member of CHT + username: "cvernooy" + cht_member: true # FIXME: Uncomment if the maintainer is a member of CHT # - name: "FIXME" # username: "FIXME" # email: "FIXME" -- GitLab From bbe0c12f46eff28ad0c8105b8c599330d27fac59 Mon Sep 17 00:00:00 2001 From: Olga O Date: Fri, 11 Dec 2020 11:56:15 -0600 Subject: [PATCH 19/23] added changes to hardening_manifest.yaml --- hardening_manifest.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/hardening_manifest.yaml b/hardening_manifest.yaml index f152e34..0d3780e 100644 --- a/hardening_manifest.yaml +++ b/hardening_manifest.yaml @@ -29,11 +29,11 @@ labels: org.opencontainers.image.vendor: "Apache" org.opencontainers.image.version: "2.2.0" ## Keywords to help with search (ex. "cicd,gitops,golang") - mil.dso.ironbank.image.keywords: "FIXME" + mil.dso.ironbank.image.keywords: "tensorflow, machine learning" ## This value can be "opensource" or "commercial" mil.dso.ironbank.image.type: "opensource" ## Product the image belongs to for grouping multiple images - mil.dso.ironbank.product.name: "FIXME" + mil.dso.ironbank.product.name: "tensorflow" # List of resources to make available to the offline build context resources: -- GitLab From 957be72b5c3e690513f708adb1e49a010111de7e Mon Sep 17 00:00:00 2001 From: cvernooy Date: Fri, 11 Dec 2020 18:12:16 +0000 Subject: [PATCH 20/23] Update hardening_manifest.yaml --- hardening_manifest.yaml | 20 +------------------- 1 file changed, 1 insertion(+), 19 deletions(-) diff --git a/hardening_manifest.yaml b/hardening_manifest.yaml index 0d3780e..8d57ac7 100644 --- a/hardening_manifest.yaml +++ b/hardening_manifest.yaml @@ -4,9 +4,6 @@ apiVersion: v1 # The repository name in registry1, excluding /ironbank/ name: "opensource/tensorflow/tensorflow-2.2.0" -# List of tags to push for the repository in registry1 -# The most specific version should be the first tag and will be shown -# on ironbank.dsop.io tags: - "2.2.0" - "latest" @@ -19,20 +16,13 @@ args: # Docker image labels labels: org.opencontainers.image.title: "tensorflow-2.2.0" - ## Human-readable description of the software packaged in the image org.opencontainers.image.description: "ternserflow 2.2.0 container based off UBI 8" - ## License(s) under which contained software is distributed org.opencontainers.image.licenses: "Apache-2.0" - ## URL to find more information on the image org.opencontainers.image.url: "https://hub.docker.com/layers/tensorflow/tensorflow/2.2.0/images/sha256-08901711826b185136886c7b8271b9fdbe86b8ccb598669781a1f5cb340184eb?context=explore" - ## Name of the distributing entity, organization or individual org.opencontainers.image.vendor: "Apache" org.opencontainers.image.version: "2.2.0" - ## Keywords to help with search (ex. "cicd,gitops,golang") mil.dso.ironbank.image.keywords: "tensorflow, machine learning" - ## This value can be "opensource" or "commercial" mil.dso.ironbank.image.type: "opensource" - ## Product the image belongs to for grouping multiple images mil.dso.ironbank.product.name: "tensorflow" # List of resources to make available to the offline build context @@ -228,16 +218,8 @@ resources: type: sha256 value: aa36550ff0c0b7ef7fa639055d797116ee891440eac1a56f378e2d3179e0320b -# List of project maintainers -# FIXME: Fill in the following details for the current container owner in the whitelist -# FIXME: Include any other vendor information if applicable maintainers: - email: "cvernooy@oteemo.com" -# # The name of the current container owner name: "Christopher Vernooy" -# # The gitlab username of the current container owner username: "cvernooy" - cht_member: true # FIXME: Uncomment if the maintainer is a member of CHT -# - name: "FIXME" -# username: "FIXME" -# email: "FIXME" + cht_member: true -- GitLab From 1db5d95c6eec7ad8068b58e704930f6b0e85b886 Mon Sep 17 00:00:00 2001 From: Christopher Vernooy Date: Tue, 30 Mar 2021 13:39:46 +0000 Subject: [PATCH 21/23] Deleted scripts/download_pippkgs.sh --- scripts/download_pippkgs.sh | 58 ------------------------------------- 1 file changed, 58 deletions(-) delete mode 100755 scripts/download_pippkgs.sh diff --git a/scripts/download_pippkgs.sh b/scripts/download_pippkgs.sh deleted file mode 100755 index 26d7cc5..0000000 --- a/scripts/download_pippkgs.sh +++ /dev/null @@ -1,58 +0,0 @@ -#!/bin/bash -echo "##### Download script Log - Run Starting ######" >> download_script.log -download_pkg_locally='1' -raw_pkglist=( $(cat files/requirements.txt) ) -python_version='3' -if [[ -e download.yaml ]]; then - echo "not creating new file, file exists" >> download_script.log -else - echo -e "---\r\nresources: " > download.yaml -fi -for p in ${raw_pkglist[@]}; do - dl_link='' - pkg=$(echo $p | cut -d '=' -f 1) - mod_pkg=$(echo $pkg | tr '-' '_') - version=$(echo $p | cut -d '=' -f 3) - link_data=$(curl -sL https://pypi.org/simple/$pkg/ | grep -i "$pkg-$version-py2.py3-none-any.whl" | cut -d '=' -f 2,3 | cut -d '<' -f 1 | cut -d '>' -f 1) - if [[ $link_data == '' ]]; then - link_data=$(curl -sL https://pypi.org/simple/$pkg/ | grep -i "$mod_pkg-$version-py2.py3-none-any.whl" | cut -d '=' -f 2,3 | cut -d '<' -f 1 | cut -d '>' -f 1) - fi - if [[ $link_data == '' ]]; then - link_data=$(curl -sL https://pypi.org/simple/$pkg/ | grep -i "$pkg-$version-py3-none-any.whl" | cut -d '=' -f 2,3 | cut -d '<' -f 1 | cut -d '>' -f 1) - fi - if [[ $link_data == '' ]]; then - link_data=$(curl -sL https://pypi.org/simple/$pkg/ | grep -i "$mod_pkg-$version-py3-none-any.whl" | cut -d '=' -f 2,3 | cut -d '<' -f 1 | cut -d '>' -f 1) - fi - if [[ $link_data == '' ]]; then - link_data=$(curl -sL https://pypi.org/simple/$pkg/ | egrep -i "$pkg-$version-cp36-cp36m-manylinux(.*)_x86_64.whl" | cut -d '=' -f 2,3 | cut -d '<' -f 1 | cut -d '>' -f 1) - fi - if [[ $link_data == '' ]]; then - link_data=$(curl -sL https://pypi.org/simple/$pkg/ | egrep -i "$mod_pkg-$version-cp36-cp36m-manylinux(.*)_x86_64.whl" | cut -d '=' -f 2,3 | cut -d '<' -f 1 | cut -d '>' -f 1) - fi - if [[ $link_data == '' ]]; then - link_data=$(curl -sL https://pypi.org/simple/$pkg/ | grep -i "$pkg-$version.tar.gz" | cut -d '=' -f 2,3 | cut -d '<' -f 1 | cut -d '>' -f 1) - fi - if [[ $link_data == '' ]]; then - link_data=$(curl -sL https://pypi.org/simple/$pkg/ | grep -i "$mod_pkg-$version.tar.gz" | cut -d '=' -f 2,3 | cut -d '<' -f 1 | cut -d '>' -f 1) - fi - if [[ $link_data == '' ]]; then - link_data=$(curl -sL https://pypi.org/simple/$pkg/ | grep -i "$pkg-$version.zip" | cut -d '=' -f 2,3 | cut -d '<' -f 1 | cut -d '>' -f 1) - fi - if [[ $link_data == '' ]]; then - link_data=$(curl -sL https://pypi.org/simple/$pkg/ | grep -i "$mod_pkg-$version.zip" | cut -d '=' -f 2,3 | cut -d '<' -f 1 | cut -d '>' -f 1) - fi - #if not found you will have to add the package details to the download.yaml file maanually - dl_link=$link_data - if [[ $dl_link != '' ]]; then - # TESTING: - #dl_link=$(echo $dl_link | cut -d '#' -f 1 | cut -d '"' -f 2) - #shasum=$(echo $dl_link | cut -d '=' -f 2 | cut -d ' ' -f 1) - echo "writing information to download.yaml for $pkg==$version" >> download_script.log - echo -e " - url: \"$(echo $dl_link | cut -d '#' -f 1 | cut -d '"' -f 2)\"\r\n filename: \"$(echo $dl_link | rev | cut -d '/' -f 1 | rev | cut -d '#' -f 1 | cut -d '"' -f 2)\"\r\n validation:\r\n type: \"sha256\"\r\n value: \"$(echo $dl_link | cut -d '=' -f 2 | cut -d ' ' -f 1)" >> download.yaml - if [[ $download_pkg_locally == '1' ]]; then - wget $(echo $dl_link | cut -d '#' -f 1 | cut -d '"' -f 2) -O pip_pkgs/$(echo $dl_link | rev | cut -d '/' -f 1 | rev | cut -d '#' -f 1 | cut -d '"' -f 2) - fi - else - echo "$pkg-$version: cannot match download package string" >> download_script.log - fi -done -- GitLab From fa79ad2cc25aedcedc366605994db85ec9295e30 Mon Sep 17 00:00:00 2001 From: Olga O Date: Wed, 31 Mar 2021 16:18:44 -0500 Subject: [PATCH 22/23] added healthcheck line --- Dockerfile | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/Dockerfile b/Dockerfile index 1658749..1216903 100644 --- a/Dockerfile +++ b/Dockerfile @@ -38,4 +38,6 @@ RUN find / -path /proc -prune -o -perm /4000 -exec chmod u-s {} \; RUN find / -path /proc -prune -o -perm /2000 -exec chmod g-s {} \; RUN rm -rf /root/pip_pkgs/ COPY --from=builder /usr/lib/python3.6 /usr/lib/python3.6 -USER tensorflow \ No newline at end of file +USER tensorflow + +HEALTHCHECK NONE \ No newline at end of file -- GitLab From 882518238c2f8e33291081bf297cef3566e06929 Mon Sep 17 00:00:00 2001 From: alfontaine Date: Mon, 12 Apr 2021 10:11:04 -0600 Subject: [PATCH 23/23] conflicts --- .gitlab/issue_templates/Access Request.md | 3 + .../issue_templates/Application - Archive.md | 6 +- .../issue_templates/Application - Initial.md | 57 ++++++++++++++++--- .../issue_templates/Application - Update.md | 55 ++++++++++++++++-- .gitlab/issue_templates/Bug.md | 8 ++- .gitlab/issue_templates/Feature Request.md | 8 ++- .../issue_templates/Leadership Question.md | 5 ++ .gitlab/issue_templates/New Findings.md | 11 +++- .../issue_templates/Onboarding Question.md | 5 ++ .gitlab/issue_templates/Pipeline Failure.md | 9 ++- 10 files changed, 146 insertions(+), 21 deletions(-) diff --git a/.gitlab/issue_templates/Access Request.md b/.gitlab/issue_templates/Access Request.md index 1a7b224..2e3e8b7 100644 --- a/.gitlab/issue_templates/Access Request.md +++ b/.gitlab/issue_templates/Access Request.md @@ -13,4 +13,7 @@ The access level should be: - [ ] All accounts have been provided the necessary accesses + + + /label ~"Access" ~"To Do" \ No newline at end of file diff --git a/.gitlab/issue_templates/Application - Archive.md b/.gitlab/issue_templates/Application - Archive.md index 9f3b5fe..0304276 100644 --- a/.gitlab/issue_templates/Application - Archive.md +++ b/.gitlab/issue_templates/Application - Archive.md @@ -17,5 +17,7 @@ Requesting this application be archived due to one of the following reasons: - [ ] Iron Bank frontend no longer lists application as available or approved -/label ~"Container::Archive" -/cc @ironbank-notifications/archive \ No newline at end of file + + + +/label ~"Container::Archive" \ No newline at end of file diff --git a/.gitlab/issue_templates/Application - Initial.md b/.gitlab/issue_templates/Application - Initial.md index 6594a05..7ddab91 100644 --- a/.gitlab/issue_templates/Application - Initial.md +++ b/.gitlab/issue_templates/Application - Initial.md @@ -7,26 +7,69 @@ Requesting application to be hardened. This is only for initial hardening of a c Current version: (State the current version of the application as you see it) -Under support: (Is the updated version within the same major version of the application or is this a new major version?) +## Communication + +All communication should occur through this issue. This ensures that all information is documented in a centralized location and also ensures that all of the assignees are notified of updates. It is imperative that all required parties are listed as assignees of this issue and that individuals are not removed. Please do not remove anyone from the assignee list. + +If you need to contact the Container Hardening team, please identify your assigned point of contact. You can find your point of contact by: +1. They should be listed as an assignee on this ticket +2. They should be listed in the `hardening_manifest.yaml` file under the `maintainers` section with a field of `cht_member: true` + +If you have no assignee, feel free to tag Container Hardening leadership in your issue by commenting on this issue with your questions/concerns and then add `/cc @ironbank-notifications/leadership`. Gitlab will automatically notify all Container Hardening leadership to look at this issue and respond. + + +## Responsibilities + +If this application is owned by a Contributor or Vendor (identifed as `Owner::Contributor` and `Owner::Vendor` respectively), then it is your responsibility to drive this issue through completion. This means that the Container Hardening team is not here to help push any deadlines/timeframes you may have with other customers or DoD agencies. If you have issues with the activity, you may notify Container Hardening leadership above. Do not change the ownership labels. ## Definition of Done + Hardening: -- [ ] Container builds successfully -- [ ] Greylist file has been created (requires a member from container hardening) +- [ ] Hardening manifest is created and adheres to the schema (https://repo1.dsop.io/ironbank-tools/ironbank-pipeline/-/blob/master/schema/hardening_manifest.schema.json) +- [ ] Container builds successfully through the Gitlab CI pipeline - [ ] Branch has been merged into `development` +- [ ] Project is configured for automatic renovate updates (if possible) Justifications: - [ ] All findings have been justified per the above documentation -- [ ] Justifications have been provided to the container hardening team +- [ ] Justifications have been attached to this issue +- [ ] Apply the label `Approval` to indicate this container is ready for the approval phase + +Note: The justifications must be provided in a timely fashion. Failure to do so could result in new findings being identified which may start this process over. -Approval Process (container hardening team processes): +Approval Process (Container Hardening Team processes): - [ ] Peer review from Container Hardening Team - [ ] Findings Approver has reviewed and approved all justifications - [ ] Approval request has been sent to Authorizing Official - [ ] Approval request has been processed by Authorizing Official +Note: If the above approval process is kicked back for any reason, the `Approval` label will be removed and the issue will be sent back to `Open`. Any comments will be listed in this issue for you to address. Once they have been addressed, you may re-add the `Approval` label. + +## Post Approval + +### Continuous Monitoring + +Once a container is approved, the `Approved` label will be applied to this issue and it will be closed. You will be able to find your applications on http://ironbank.dsop.io and https://registry1.dsop.io. + +In addition to the above, your application will now be subscribed to continuous monitoring. This means that any new findings discovered as part of this will need justifications. To satisfy this process, any new findings will trigger a new Gitlab issue in this project with the label `Container::New Findings`. All members listed in the `maintainers` section of the `hardening_manifest.yaml` file will automatically be assigned. It is your responsibility as a Contributor or Vendor to monitor for this and provide justifications in a timely fashion. This newly created issue will have all the instructions necessary to complete the process. Failure to provide justifications could result in the revocation of the application's approval status. + +### Updates + +It is imperative that application updates be submitted as quickly as possible. We do not want applications to become stale. To help with this process, Ironbank recommends using a tool called [Renovate](https://github.com/renovatebot/renovate). This requires a `renovate.json` file to be placed in your project and can automate the creation of issues and merge requests. + +If not using Renovate, it will be up to you as a Contributor or Vendor to keep this image up-to-date at all times. When you wish to submit an application update, you must create a new issue in this project using the `Application - Update` template and associate it with the corresponding merge request. If you submit a merge request alone, work will not proceed until a related issue is created. These issues are tracked using the label `Container::Update`. + +Additionally, it is imperative that all updates must be followed through to completion. Simply submitting an application update but not following through on justifications and approvals does not suffice and risk your application's approval status being revoked. + +### Bugs + +Occassionally, users may file bug reports for your application. It is your responsibility to monitor for these since they are created inside your project repository. Assignees will automatically be populated by the `members` section of the `hardening_manifest.yaml` file and will have the label `Bug`. + + + + + -/label ~"Container::Initial" -/cc @ironbank-notifications/cht \ No newline at end of file +/label ~"Container::Initial" \ No newline at end of file diff --git a/.gitlab/issue_templates/Application - Update.md b/.gitlab/issue_templates/Application - Update.md index caebb3e..569e75d 100644 --- a/.gitlab/issue_templates/Application - Update.md +++ b/.gitlab/issue_templates/Application - Update.md @@ -13,15 +13,38 @@ Updated version: (State the version you would like the application updated to) Under support: (Is the updated version within the same major version of the application or is this a new major version?) +## Communication + +All communication should occur through this issue. This ensures that all information is documented in a centralized location and also ensures that all of the assignees are notified of updates. It is imperative that all required parties are listed as assignees of this issue and that individuals are not removed. Please do not remove anyone from the assignee list. + +If you need to contact the Container Hardening team, please identify your assigned point of contact. You can find your point of contact by: +1. They should be listed as an assignee on this ticket +2. They should be listed in the `hardening_manifest.yaml` file under the `maintainers` section with a field of `cht_member: true` + +If you have no assignee, feel free to tag Container Hardening leadership in your issue by commenting on this issue with your questions/concerns and then add `/cc @ironbank-notifications/leadership`. Gitlab will automatically notify all Container Hardening leadership to look at this issue and respond. + + +## Responsibilities + +If this application is owned by a Contributor or Vendor (identifed as `Owner::Contributor` and `Owner::Vendor` respectively), then it is your responsibility to drive this issue through completion. This means that the Container Hardening team is not here to help push any deadlines/timeframes you may have with other customers or DoD agencies. If you have issues with the activity, you may notify Container Hardening leadership above. Do not change the ownership labels. + + ## Definition of Done Hardening: -- [ ] Container builds successfully -- [ ] Container version has been updated in greylist file +- [ ] Hardening manifest has been updated and adheres to the schema (https://repo1.dsop.io/ironbank-tools/ironbank-pipeline/-/blob/master/schema/hardening_manifest.schema.json) +- [ ] Container builds successfully throughthe Gitlab CI pipeline - [ ] Branch has been merged into `development` +- [ ] Project is configured for automatic renovate updates (if possible) + +No new findings: +- [ ] There are no new findings in this update. Skip the Justifications and Approval Process steps and apply the label `Approval` Justifications: - [ ] All findings have been justified per the above documentation - [ ] Justifications have been provided to the container hardening team +- [ ] Skip the Justifications and Approval Process steps and apply the label `Approval` + +Note: The justifications must be provided in a timely fashion. Failure to do so could result in new findings being identified which may start this process over. Approval Process: - [ ] Peer review from Container Hardening Team @@ -29,7 +52,31 @@ Approval Process: - [ ] Approval request has been sent to Authorizing Official - [ ] Approval request has been processed by Authorizing Official +Note: If the above approval process is kicked back for any reason, the `Approval` label will be removed and the issue will be sent back to `Open`. Any comments will be listed in this issue for you to address. Once they have been addressed, you may re-add the `Approval` label. + + +## Post Approval + +### Continuous Monitoring + +Once a container is approved, the `Approved` label will be applied to this issue and it will be closed. You will be able to find your applications on http://ironbank.dsop.io and https://registry1.dsop.io. + +In addition to the above, your application will now be subscribed to continuous monitoring. This means that any new findings discovered as part of this will need justifications. To satisfy this process, any new findings will trigger a new Gitlab issue in this project with the label `Container::New Findings`. All members listed in the `maintainers` section of the `hardening_manifest.yaml` file will automatically be assigned. It is your responsibility as a Contributor or Vendor to monitor for this and provide justifications in a timely fashion. This newly created issue will have all the instructions necessary to complete the process. Failure to provide justifications could result in the revocation of the application's approval status. + +### Updates + +It is imperative that application updates be submitted as quickly as possible. We do not want applications to become stale. To help with this process, Ironbank recommends using a tool called [Renovate](https://github.com/renovatebot/renovate). This requires a `renovate.json` file to be placed in your project and can automate the creation of issues and merge requests. + +If not using Renovate, it will be up to you as a Contributor or Vendor to keep this image up-to-date at all times. When you wish to submit an application update, you must create a new issue in this project using the `Application - Update` template and associate it with the corresponding merge request. If you submit a merge request alone, work will not proceed until a related issue is created. These issues are tracked using the label `Container::Update`. + +Additionally, it is imperative that all updates must be followed through to completion. Simply submitting an application update but not following through on justifications and approvals does not suffice and risk your application's approval status being revoked. + +### Bugs + +Occassionally, users may file bug reports for your application. It is your responsibility to monitor for these since they are created inside your project repository. Assignees will automatically be populated by the `members` section of the `hardening_manifest.yaml` file and will have the label `Bug`. + + + -/label ~"Container::Update" -/cc @ironbank-notifications/updates \ No newline at end of file +/label ~"Container::Update" \ No newline at end of file diff --git a/.gitlab/issue_templates/Bug.md b/.gitlab/issue_templates/Bug.md index 1427a0c..069eaf0 100644 --- a/.gitlab/issue_templates/Bug.md +++ b/.gitlab/issue_templates/Bug.md @@ -33,5 +33,9 @@ logs, and code as it's very hard to read otherwise.) - [ ] Bug has been identified and corrected within the container -/label ~Bug -/cc @ironbank-notifications/bug \ No newline at end of file + + + + + +/label ~Bug \ No newline at end of file diff --git a/.gitlab/issue_templates/Feature Request.md b/.gitlab/issue_templates/Feature Request.md index a0e2f19..aad0671 100644 --- a/.gitlab/issue_templates/Feature Request.md +++ b/.gitlab/issue_templates/Feature Request.md @@ -28,5 +28,9 @@ - [ ] Feature has been implemented -/label ~Feature -/cc @ironbank-notifications/feature \ No newline at end of file + + + + + +/label ~Feature \ No newline at end of file diff --git a/.gitlab/issue_templates/Leadership Question.md b/.gitlab/issue_templates/Leadership Question.md index 4674f82..b2cf9e5 100644 --- a/.gitlab/issue_templates/Leadership Question.md +++ b/.gitlab/issue_templates/Leadership Question.md @@ -3,5 +3,10 @@ (Detailed description of the question you'd like to ask the leadership team) + + + + + /label ~"Question::Leadership" ~"To Do" /cc @ironbank-notifications/leadership \ No newline at end of file diff --git a/.gitlab/issue_templates/New Findings.md b/.gitlab/issue_templates/New Findings.md index 068d029..867f832 100644 --- a/.gitlab/issue_templates/New Findings.md +++ b/.gitlab/issue_templates/New Findings.md @@ -8,13 +8,20 @@ Container has new findings discovered during continuous monitoring. Justifications: - [ ] All findings have been justified - [ ] Justifications have been provided to the container hardening team +- [ ] `Approval` label has been applied + +Note: The justifications must be provided in a timely fashion. Failure to do so could result in new findings being identified which may start this process over. Approval Process: - [ ] Findings Approver has reviewed and approved all justifications - [ ] Approval request has been sent to Authorizing Official - [ ] Approval request has been processed by Authorizing Official +Note: If the above approval process is kicked back for any reason, the `Approval` label will be removed and the issue will be sent back to `Open`. Any comments will be listed in this issue for you to address. Once they have been addressed, you may re-add the `Approval` label. + + + + -/label ~"Container::New Findings" -/cc @ironbank-notifications/security \ No newline at end of file +/label ~"Container::New Findings" \ No newline at end of file diff --git a/.gitlab/issue_templates/Onboarding Question.md b/.gitlab/issue_templates/Onboarding Question.md index 77dea11..ae8011e 100644 --- a/.gitlab/issue_templates/Onboarding Question.md +++ b/.gitlab/issue_templates/Onboarding Question.md @@ -3,5 +3,10 @@ (Detailed description of the question you'd like to ask the onboarding team) + + + + + /label ~"Question::Onboarding" ~"To Do" /cc @ironbank-notifications/onboarding \ No newline at end of file diff --git a/.gitlab/issue_templates/Pipeline Failure.md b/.gitlab/issue_templates/Pipeline Failure.md index 28b82a9..36aa982 100644 --- a/.gitlab/issue_templates/Pipeline Failure.md +++ b/.gitlab/issue_templates/Pipeline Failure.md @@ -27,5 +27,10 @@ - [ ] Pipeline failure has been resolved -/label ~Pipeline -/cc @ironbank-notifications/pipelines \ No newline at end of file + + + + + + +/label ~Pipeline \ No newline at end of file -- GitLab