Skip to content

Fix build and remove some unused code. #250

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
wants to merge 12 commits into from
Closed
Original file line number Diff line number Diff line change
Expand Up @@ -22,33 +22,14 @@ inputs:
upload-enabled:
required: true
type: boolean
python-version:
required: true
type: string

runs:
using: composite
steps:

<% for package_id, package_info in packages.items() %>
- name: Download <<package_info.repo>> (artifacts)
uses: ./.github/actions/download-artifacts
with:
artifact-repo: "<<package_info.repo>>"
artifact-name: "<<package_info.artifact_name | replace_placeholder('repo', package_info.repo) | replace_placeholder('git_tag', package_info.git_tag) >>"
target-device: "${{ inputs.target-device }}"
git_sha: "<<package_info.git_tag>>"
host-platform: ${{ inputs.host-platform }}
dest-dir: ${{ env.ARTIFACTS_DIR }}
dependencies-workflow: <<package_info.artifact_workflow>>
<% endfor %>

<% if packages %>

- name: Display structure of downloaded artifacts
shell: bash --noprofile --norc -xeuo pipefail {0}
run: |
pwd
ls -lahR ${{ env.ARTIFACTS_DIR }}
<% endif %>

- if: ${{ inputs.use-container }}
name: Build (in container)
shell: bash --noprofile --norc -xeuo pipefail {0}
Expand All @@ -60,14 +41,16 @@ runs:
-e AWS_ACCESS_KEY_ID \
-e AWS_SECRET_ACCESS_KEY \
-e GITHUB_TOKEN \
-e ARTIFACTS_DIR="$ARTIFACTS_DIR" \
-e BINDINGS_ARTIFACTS_DIR="$BINDINGS_ARTIFACTS_DIR" \
-e CORE_ARTIFACTS_DIR="$CORE_ARTIFACTS_DIR" \
-e UPLOAD_ENABLED="$UPLOAD_ENABLED" \
-e USE_CUDA="$USE_CUDA" \
-e REPO_DIR="$REPO_DIR" \
-e LEGATE_CORE_BUILD_MODE="$LEGATE_CORE_BUILD_MODE" \
-e PYTHON_VERSION="$PYTHON_VERSION" \
-v "${{ env.REPO_DIR }}:${{ env.REPO_DIR }}" \
-v "${{ env.ARTIFACTS_DIR }}:${{ env.ARTIFACTS_DIR }}" \
-v "${{ env.BINDINGS_ARTIFACTS_DIR }}:${{ env.BINDINGS_ARTIFACTS_DIR }}" \
-v "${{ env.CORE_ARTIFACTS_DIR }}:${{ env.CORE_ARTIFACTS_DIR }}" \
--rm "${{ inputs.docker-image }}" \
/bin/bash -c "${{ env.REPO_DIR }}/continuous_integration/scripts/entrypoint ${{ env.REPO_DIR }}/continuous_integration/scripts/build ${{ inputs.build-type}} ${{ inputs.target-device }}"

Expand All @@ -77,14 +60,26 @@ runs:
run: |
"${{ env.REPO_DIR }}/continuous_integration/scripts/entrypoint" "${{ env.REPO_DIR }}/continuous_integration/scripts/build" "${{ inputs.build-type}}" "${{ inputs.target-device }}"

- name: Display structure of the artifacts folder (post build)
- name: Display structure of the bindings artifacts folder (post build)
shell: bash --noprofile --norc -xeuo pipefail {0}
run: |
sudo chown -R $(whoami) ${{ env.BINDINGS_ARTIFACTS_DIR }}
ls -lahR ${{ env.BINDINGS_ARTIFACTS_DIR }}

- name: Upload bindings build artifacts
uses: actions/upload-artifact@v4
with:
name: ${{ env.BINDINGS_ARTIFACT_NAME }}
path: ${{ env.BINDINGS_ARTIFACTS_DIR }}

- name: Display structure of the core artifacts folder (post build)
shell: bash --noprofile --norc -xeuo pipefail {0}
run: |
sudo chown -R $(whoami) ${{ env.ARTIFACTS_DIR }}
ls -lahR ${{ env.ARTIFACTS_DIR }}
sudo chown -R $(whoami) ${{ env.CORE_ARTIFACTS_DIR }}
ls -lahR ${{ env.CORE_ARTIFACTS_DIR }}

- name: Upload build artifacts
- name: Upload core build artifacts
uses: actions/upload-artifact@v4
with:
name: ${{ env.ARTIFACT_NAME }}
path: ${{ env.ARTIFACTS_DIR }}
name: ${{ env.CORE_ARTIFACT_NAME }}
path: ${{ env.CORE_ARTIFACTS_DIR }}
59 changes: 0 additions & 59 deletions .github/actions/download-artifacts/action.yml

This file was deleted.

12 changes: 8 additions & 4 deletions .github/actions/setup/action.yml
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ inputs:
required: true
type: boolean
python-version:
required: false
required: true
type: string

runs:
Expand Down Expand Up @@ -57,12 +57,16 @@ runs:
PKG_DIR="${BUILD_MODE}/${TARGET_PLATFORM}"
fi

echo "ARTIFACT_NAME=${{ inputs.host-platform }}-${{ inputs.build-type }}-${{ inputs.client-repo }}-python${{ inputs.python-version }}-${{ inputs.target-device }}${BUILD_MODE_STR}${WITH_TESTS_STR}-${{ github.sha }}" >> $GITHUB_ENV
echo "ARTIFACTS_DIR=$(realpath "$(pwd)/dist")" >> $GITHUB_ENV
PYTHON_VERSION_FORMATTED=$(echo '${{ inputs.python-version }}' | tr -d '.')

echo "BINDINGS_ARTIFACT_NAME=${{ inputs.host-platform }}-${{ inputs.build-type }}-cuda_bindings-python${PYTHON_VERSION_FORMATTED}-${{ inputs.target-device }}${BUILD_MODE_STR}${WITH_TESTS_STR}-${{ github.sha }}" >> $GITHUB_ENV
echo "BINDINGS_ARTIFACTS_DIR=$(realpath "$(pwd)/cuda_bindings/dist")" >> $GITHUB_ENV
echo "CORE_ARTIFACT_NAME=${{ inputs.host-platform }}-${{ inputs.build-type }}-cuda_core-python${PYTHON_VERSION_FORMATTED}-${{ inputs.target-device }}${BUILD_MODE_STR}${WITH_TESTS_STR}-${{ github.sha }}" >> $GITHUB_ENV
echo "CORE_ARTIFACTS_DIR=$(realpath "$(pwd)/cuda_core/dist")" >> $GITHUB_ENV
echo "USE_CUDA=${{ (inputs.target-device == 'cpu' && 'OFF') || 'ON' }}" >> $GITHUB_ENV
echo "UPLOAD_ENABLED=${{ (inputs.upload-enabled == 'true' && 'ON') || 'OFF' }}" >> $GITHUB_ENV
echo "LEGATE_CORE_BUILD_MODE=${BUILD_MODE}" >> $GITHUB_ENV
echo "BUILD_DATE=$(date +%Y%m%d)" >> $GITHUB_ENV
echo "TARGET_PLATFORM=${TARGET_PLATFORM}" >> $GITHUB_ENV
echo "PKG_DIR=${PKG_DIR}" >> $GITHUB_ENV
echo "PYTHON_VERSION=${{ inputs.python-version }}" >> $GITHUB_ENV
echo "PYTHON_VERSION=${{ inputs.python-version }}" >> $GITHUB_ENV
4 changes: 4 additions & 0 deletions .github/workflows/ci-gh.yml
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,9 @@ jobs:
- release
upload-enabled:
- false
python-version:
#TODO cover the whole python and cuda matrix
- 3.12
uses:
./.github/workflows/gh-build-and-test.yml
with:
Expand All @@ -32,4 +35,5 @@ jobs:
build-mode: ${{ matrix.build-mode }}
build-type: ci
upload-enabled: ${{ matrix.upload-enabled }}
python-version: ${{ matrix.python-version }}
secrets: inherit
4 changes: 4 additions & 0 deletions .github/workflows/gh-build-and-test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,9 @@ on:
upload-enabled:
type: boolean
required: true
python-version:
type: string
required: true
jobs:
build:
if: ${{ github.repository_owner == 'nvidia' }}
Expand All @@ -31,4 +34,5 @@ jobs:
dependencies-file: ""
build-mode: ${{ inputs.build-mode }}
upload-enabled: ${{ inputs.upload-enabled }}
python-version: ${{ inputs.python-version }}
secrets: inherit
23 changes: 1 addition & 22 deletions .github/workflows/gh-build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@ on:
required: true
type: boolean
python-version:
required: false
required: true
type: string

jobs:
Expand Down Expand Up @@ -63,27 +63,6 @@ jobs:
upload-enabled: ${{ inputs.upload-enabled }}
python-version: ${{ inputs.python-version }}

- name: Render templates
shell: bash --noprofile --norc -xeuo pipefail {0}
run: |
pip -q install jinja2

DEPENDENCIES_FILE=""

if [ -z "${{ inputs.dependencies-file }}" ]; then
DEPENDENCIES_FILE="${REPO_DIR}/continuous_integration/no_dependencies.json"
else
DEPENDENCIES_FILE="${REPO_DIR}/${{ inputs.dependencies-file }}"
fi

${REPO_DIR}/continuous_integration/scripts/render-template.py .github/actions/build/action.yml.j2 "${DEPENDENCIES_FILE}" .github/actions/build/action.yml

- name: Dump templates
shell: bash --noprofile --norc -xeuo pipefail {0}
run: |
echo ${REPO_DIR}/.github/actions/build/action.yml
cat ${REPO_DIR}/.github/actions/build/action.yml

- name: Call build action
uses: ./.github/actions/build
with:
Expand Down
1 change: 0 additions & 1 deletion continuous_integration/no_dependencies.json

This file was deleted.

6 changes: 4 additions & 2 deletions continuous_integration/scripts/build
Original file line number Diff line number Diff line change
Expand Up @@ -3,11 +3,13 @@
build_ci() {
set -xeou pipefail

cd "${REPO_DIR}"

export CUDA_HOME="${CONDA_PREFIX}/targets/x86_64-linux"
export PARALLEL_LEVEL=$(nproc --ignore 1)

cd "${REPO_DIR}/cuda_bindings"
python setup.py bdist_wheel

cd "${REPO_DIR}/cuda_core"
python setup.py bdist_wheel
}

Expand Down
13 changes: 1 addition & 12 deletions continuous_integration/scripts/make-conda-env
Original file line number Diff line number Diff line change
Expand Up @@ -3,18 +3,7 @@
set -x

make_ci_env() {
mamba env create -n "${CONDA_ENV}" -f "${REPO_DIR}/continuous_integration/environment.yml"
}

make_test_env() {
. conda-utils

mamba env create -n "${CONDA_ENV}" -f "${REPO_DIR}/continuous_integration/environment.yml"

activate_conda_env

pip install "${ARTIFACTS_DIR}"/*.whl

mamba env create -n "${CONDA_ENV}" -f "${REPO_DIR}/continuous_integration/environment.yml" python=${PYTHON_VERSION}
}

make_conda_env() {
Expand Down
52 changes: 0 additions & 52 deletions continuous_integration/scripts/render-template.py

This file was deleted.