Skip to content

Commit 61e742b

Browse files
committed
Test out a simple env-vars script for build
1 parent 41fdb86 commit 61e742b

File tree

2 files changed

+46
-23
lines changed

2 files changed

+46
-23
lines changed

.github/workflows/build-wheel.yml

Lines changed: 6 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -59,29 +59,12 @@ jobs:
5959
uses: ilammy/msvc-dev-cmd@v1 # TODO: ask admin to allow pinning commits
6060

6161
- name: Set environment variables
62-
run: |
63-
PYTHON_VERSION_FORMATTED=$(echo '${{ matrix.python-version }}' | tr -d '.')
64-
if [[ "${{ inputs.host-platform }}" == linux* ]]; then
65-
CIBW_BUILD="cp${PYTHON_VERSION_FORMATTED}-manylinux*"
66-
REPO_DIR=$(pwd)
67-
elif [[ "${{ inputs.host-platform }}" == win* ]]; then
68-
CIBW_BUILD="cp${PYTHON_VERSION_FORMATTED}-win_amd64"
69-
PWD=$(pwd)
70-
REPO_DIR=$(cygpath -w $PWD)
71-
fi
72-
73-
echo "CUDA_BINDINGS_PARALLEL_LEVEL=$(nproc)" >> $GITHUB_ENV
74-
CUDA_CORE_ARTIFACT_BASENAME="cuda-core-python${PYTHON_VERSION_FORMATTED}-${{ inputs.host-platform }}"
75-
echo "CUDA_CORE_ARTIFACT_BASENAME=${CUDA_CORE_ARTIFACT_BASENAME}" >> $GITHUB_ENV
76-
echo "CUDA_CORE_ARTIFACT_NAME=${CUDA_CORE_ARTIFACT_BASENAME}-${{ github.sha }}" >> $GITHUB_ENV
77-
echo "CUDA_CORE_ARTIFACTS_DIR=$(realpath "$REPO_DIR/cuda_core/dist")" >> $GITHUB_ENV
78-
echo "CUDA_CORE_CYTHON_TESTS_DIR=$(realpath "$REPO_DIR/cuda_core/tests/cython")" >> $GITHUB_ENV
79-
CUDA_BINDINGS_ARTIFACT_BASENAME="cuda-bindings-python${PYTHON_VERSION_FORMATTED}-cuda${{ inputs.cuda-version }}-${{ inputs.host-platform }}"
80-
echo "CUDA_BINDINGS_ARTIFACT_BASENAME=${CUDA_BINDINGS_ARTIFACT_BASENAME}" >> $GITHUB_ENV
81-
echo "CUDA_BINDINGS_ARTIFACT_NAME=${CUDA_BINDINGS_ARTIFACT_BASENAME}-${{ github.sha }}" >> $GITHUB_ENV
82-
echo "CUDA_BINDINGS_ARTIFACTS_DIR=$(realpath "$REPO_DIR/cuda_bindings/dist")" >> $GITHUB_ENV
83-
echo "CUDA_BINDINGS_CYTHON_TESTS_DIR=$(realpath "$REPO_DIR/cuda_bindings/tests/cython")" >> $GITHUB_ENV
84-
echo "CIBW_BUILD=${CIBW_BUILD}" >> $GITHUB_ENV
62+
env:
63+
CUDA_VER: ${{ inputs.cuda-version }}
64+
HOST_PLATFORM: ${{ inputs.host-platform }}
65+
PY_VER: ${{ matrix.python-version }}
66+
SHA: ${{ github.sha }}
67+
run: ./ci/tools/env-vars build
8568

8669
- name: Dump environment
8770
run: |

ci/tools/env-vars

Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,40 @@
1+
#!/usr/bin/env bash
2+
3+
# Copyright (c) 2025, NVIDIA CORPORATION & AFFILIATES. ALL RIGHTS RESERVED.
4+
#
5+
# SPDX-License-Identifier: Apache-2.0
6+
7+
# A utility script to set up the GitHub environment variables for the CI.
8+
9+
set -euo pipefail
10+
11+
# Check if the script was called with exactly 1 argument
12+
if [[ ${#} -ne 1 ]]; then
13+
echo "Error: This script requires exactly 1 argument (the build mode). You provided ${#}"
14+
echo "Usage: ${0} build_mode[build or test]"
15+
exit 1
16+
fi
17+
18+
PYTHON_VERSION_FORMATTED=$(echo '${PY_VER}' | tr -d '.')
19+
if [[ "${HOST_PLATFORM}" == linux* ]]; then
20+
CIBW_BUILD="cp${PYTHON_VERSION_FORMATTED}-manylinux*"
21+
REPO_DIR=$(pwd)
22+
elif [[ "${HOST_PLATFORM}" == win* ]]; then
23+
CIBW_BUILD="cp${PYTHON_VERSION_FORMATTED}-win_amd64"
24+
PWD=$(pwd)
25+
REPO_DIR=$(cygpath -w ${PWD})
26+
fi
27+
28+
echo "PATH=${REPO_DIR}/ci/tools:${PATH}" >> $GITHUB_ENV
29+
echo "CUDA_BINDINGS_PARALLEL_LEVEL=$(nproc)" >> $GITHUB_ENV
30+
CUDA_CORE_ARTIFACT_BASENAME="cuda-core-python${PYTHON_VERSION_FORMATTED}-${HOST_PLATFORM}"
31+
echo "CUDA_CORE_ARTIFACT_BASENAME=${CUDA_CORE_ARTIFACT_BASENAME}" >> $GITHUB_ENV
32+
echo "CUDA_CORE_ARTIFACT_NAME=${CUDA_CORE_ARTIFACT_BASENAME}-${SHA}" >> $GITHUB_ENV
33+
echo "CUDA_CORE_ARTIFACTS_DIR=$(realpath "${REPO_DIR}/cuda_core/dist")" >> $GITHUB_ENV
34+
echo "CUDA_CORE_CYTHON_TESTS_DIR=$(realpath "${REPO_DIR}/cuda_core/tests/cython")" >> $GITHUB_ENV
35+
CUDA_BINDINGS_ARTIFACT_BASENAME="cuda-bindings-python${PYTHON_VERSION_FORMATTED}-cuda${CUDA_VER}-${HOST_PLATFORM}"
36+
echo "CUDA_BINDINGS_ARTIFACT_BASENAME=${CUDA_BINDINGS_ARTIFACT_BASENAME}" >> $GITHUB_ENV
37+
echo "CUDA_BINDINGS_ARTIFACT_NAME=${CUDA_BINDINGS_ARTIFACT_BASENAME}-${SHA}" >> $GITHUB_ENV
38+
echo "CUDA_BINDINGS_ARTIFACTS_DIR=$(realpath "${REPO_DIR}/cuda_bindings/dist")" >> $GITHUB_ENV
39+
echo "CUDA_BINDINGS_CYTHON_TESTS_DIR=$(realpath "${REPO_DIR}/cuda_bindings/tests/cython")" >> $GITHUB_ENV
40+
echo "CIBW_BUILD=${CIBW_BUILD}" >> $GITHUB_ENV

0 commit comments

Comments
 (0)