mirror of
				https://github.com/NVIDIA/nvidia-container-toolkit
				synced 2025-06-26 18:18:24 +00:00 
			
		
		
		
	Merge branch 'fix-kitmaker-scripts' into 'main'
Fix scripts and pipeline for artifactory release See merge request nvidia/container-toolkit/container-toolkit!241
This commit is contained in:
		
						commit
						25759ca933
					
				| @ -180,7 +180,7 @@ test-packaging: | ||||
| # Download the regctl binary for use in the release steps | ||||
| .regctl-setup: | ||||
|   before_script: | ||||
|     - export REGCTL_VERSION=v0.3.10 | ||||
|     - export REGCTL_VERSION=v0.4.5 | ||||
|     - apk add --no-cache curl | ||||
|     - mkdir -p bin | ||||
|     - curl -sSLo bin/regctl https://github.com/regclient/regclient/releases/download/${REGCTL_VERSION}/regctl-linux-amd64 | ||||
|  | ||||
| @ -36,6 +36,8 @@ variables: | ||||
|   STAGING_REGISTRY: registry.gitlab.com/nvidia/container-toolkit/container-toolkit/staging | ||||
|   STAGING_VERSION: ${CI_COMMIT_SHORT_SHA} | ||||
|   ARTIFACTORY_REPO_BASE: "https://urm.nvidia.com/artifactory/sw-gpu-cloudnative" | ||||
|   # TODO: We should set the kitmaker release folder here once we have the end-to-end workflow set up | ||||
|   KITMAKER_RELEASE_FOLDER: "testing" | ||||
| 
 | ||||
| .image-pull: | ||||
|   stage: image-build | ||||
| @ -311,20 +313,20 @@ scan-ubi8-arm64: | ||||
|   needs: | ||||
|     - image-packaging | ||||
|   variables: | ||||
|     VERSION: "${CI_COMMIT_SHORT_SHA}" | ||||
|     PACKAGE_REGISTRY: "${CI_REGISTRY}" | ||||
|     PACKAGE_REGISTRY_USER: "${CI_REGISTRY_USER}" | ||||
|     PACKAGE_REGISTRY_TOKEN: "${CI_REGISTRY_PASSWORD}" | ||||
|     PACKAGE_IMAGE_NAME: "${CI_REGISTRY_IMAGE}/container-toolkit" | ||||
|     PACKAGE_IMAGE_TAG: "${CI_COMMIT_SHORT_SHA}-packaging" | ||||
|     PACKAGE_ARTIFACTORY_REPO: "${ARTIFACTORY_REPO_BASE}-${PACKAGE_REPO_TYPE}-local" | ||||
|     KITMAKER_ARTIFACTORY_REPO: "${ARTIFACTORY_REPO_BASE}-generic-local/kitmaker" | ||||
|     KITMAKER_ARTIFACTORY_REPO: "${ARTIFACTORY_REPO_BASE}-generic-local/${KITMAKER_RELEASE_FOLDER}" | ||||
|   script: | ||||
|     - !reference [.regctl-setup, before_script] | ||||
|     - apk add --no-cache bash | ||||
|     - regctl registry login "${PACKAGE_REGISTRY}" -u "${PACKAGE_REGISTRY_USER}" -p "${PACKAGE_REGISTRY_TOKEN}" | ||||
|     - ./scripts/extract-packages.sh "${PACKAGE_REGISTRY}/${PACKAGE_IMAGE_NAME}:${PACKAGE_IMAGE_TAG}" "${DIST}-${ARCH}" | ||||
|     - ./scripts/extract-packages.sh "${PACKAGE_IMAGE_NAME}:${PACKAGE_IMAGE_TAG}" "${DIST}-${ARCH}" | ||||
|     # TODO: ./scripts/release-packages-artifactory.sh "${DIST}-${ARCH}" "${PACKAGE_ARTIFACTORY_REPO}" | ||||
|     - ./scripts/kitmakerize-packages.sh" "${DIST}-${ARCH}" | ||||
|     - ./scripts/release-kitmaker-artifactory.sh "${DIST}-${ARCH}" "${KITMAKER_ARTIFACTORY_REPO}" | ||||
| 
 | ||||
| release:staging-ubuntu18.04: | ||||
|  | ||||
| @ -92,6 +92,8 @@ function extract-all() { | ||||
|     local dist=$1 | ||||
|     local arch=$2 | ||||
| 
 | ||||
|     echo "Extracting packages for ${dist}-${arch} from ${PACKAGE_IMAGE}" | ||||
| 
 | ||||
|     mkdir -p "${ARTIFACTS_DIR}" | ||||
|     copy-file "${PACKAGE_IMAGE}" "/artifacts/manifest.txt" "${ARTIFACTS_DIR}/manifest.txt" | ||||
| 
 | ||||
|  | ||||
| @ -34,7 +34,7 @@ SCRIPTS_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )"/../scripts && pwd )" | ||||
| PROJECT_ROOT="$( cd "${SCRIPTS_DIR}/.." && pwd )" | ||||
| COMPONENT_NAME="nvidia-container-toolkit" | ||||
| 
 | ||||
| if [[ $# -ne 1 ]]; then | ||||
| if [[ $# -ne 2 ]]; then | ||||
|     assert_usage "$@" | ||||
| fi | ||||
| 
 | ||||
| @ -45,6 +45,8 @@ DIST=${DISTARCH%-*} | ||||
| ARCH=${DISTARCH#*-} | ||||
| ARTIFACTORY_URL=$2 | ||||
| 
 | ||||
| CURL=${CURL:-curl} | ||||
| 
 | ||||
| if [[ -z "${DIST}" || -z "${ARCH}" ]]; then | ||||
|     echo "ERROR: Distro and Architecture must be specified." >&2 | ||||
|     assert_usage "$@" | ||||
| @ -101,6 +103,8 @@ process_props() { | ||||
|             PROPS+=$(set_prop_value "${var}" "${!var}") | ||||
|         fi | ||||
|     done | ||||
| 
 | ||||
|     echo "Applying properties: ${PROPS}" | ||||
| } | ||||
| 
 | ||||
| ## NOT USED: | ||||
| @ -139,7 +143,7 @@ upload_file() { | ||||
|     # extract the Artifactory hostname | ||||
|     artifactory_host=$(echo "${ARTIFACTORY_URL##https://}" | awk -F'/' '{print $1}') | ||||
|     # get base part of the ARTIFACTORY_URL without hostname | ||||
|     local image_path="${ARTIFACTORY_URL#https://${artifactory_host}/}/${dist}/${arch}" | ||||
|     local image_path="${ARTIFACTORY_URL#https://${artifactory_host}/}/${dist}/${arch}/$(basename ${file})" | ||||
| 
 | ||||
|     local PROPS | ||||
|     process_props "${dist}" "${arch}" | ||||
| @ -157,7 +161,7 @@ upload_file() { | ||||
|         -H "X-JFrog-Art-Api: ${ARTIFACTORY_TOKEN}" \ | ||||
|         -H "X-Checksum-Sha1: ${SHA1_SUM}" \ | ||||
|         ${file:+-T ${file}} -X PUT \ | ||||
|         "https://${artifactory_host}/artifactory/${image_path};${PROPS}" ; | ||||
|         "https://${artifactory_host}/${image_path};${PROPS}" ; | ||||
|         then | ||||
|         echo "ERROR: upload file failed: ${file}" | ||||
|         exit 1 | ||||
| @ -205,7 +209,8 @@ function kitmakerize-distro() { | ||||
|     rmdir "${scratch_dir}" | ||||
| } | ||||
| 
 | ||||
| kitmaker_name="${COMPONENT_NAME//-/_}-${DIST}-${ARCH}-${NVIDIA_CONTAINER_TOOLKIT_PACKAGE_VERSION}" | ||||
| : "${VERSION=$({NVIDIA_CONTAINER_TOOLKIT_PACKAGE_VERSION})}" | ||||
| kitmaker_name="${COMPONENT_NAME//-/_}-${DIST}-${ARCH}-${VERSION}" | ||||
| kitmaker_archive="${KITMAKER_DIR}/${kitmaker_name}.tar.gz" | ||||
| kitmakerize-distro "${DIST}" "${ARCH}" "${kitmaker_archive}" | ||||
| push-kitmaker-artifactory "${DIST}" "${ARCH}" "${kitmaker_archive}" | ||||
|  | ||||
		Loading…
	
		Reference in New Issue
	
	Block a user