Skip to content
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

Build RAPIDS. #210

Merged
merged 68 commits into from
Feb 20, 2024
Merged
Show file tree
Hide file tree
Changes from 55 commits
Commits
Show all changes
68 commits
Select commit Hold shift + click to select a range
b0bce85
Build RAPIDS.
bdice Jan 18, 2024
13c0c11
Update .github/workflows/test.yml
bdice Jan 18, 2024
f506d49
Update .github/workflows/test.yml
bdice Jan 18, 2024
49a4ae7
Update .github/workflows/test.yml
bdice Jan 18, 2024
43ca157
Update .github/workflows/test.yml
trxcllnt Jan 18, 2024
fc92a2d
make features symlinks before launching devcontainers
trxcllnt Jan 18, 2024
8227a1b
revert previous commit
trxcllnt Jan 18, 2024
05a4ec0
use fix/devcontainer-json-location branch
trxcllnt Jan 18, 2024
ccbc68d
use a beefy machine
trxcllnt Jan 18, 2024
a2dcc01
define GH_TOKEN so `gh auth status` works
trxcllnt Jan 18, 2024
ce33147
use GIST_REPO_READ_ORG_GITHUB_TOKEN secret
trxcllnt Jan 18, 2024
65c51c4
pass the secret name
trxcllnt Jan 18, 2024
7bb4703
pass --no-update-env
trxcllnt Jan 18, 2024
8c2ba00
Apply suggestions from code review
trxcllnt Jan 23, 2024
7c7d5d1
Update .github/workflows/test.yml
trxcllnt Jan 23, 2024
cd999c8
don't run in subshell
trxcllnt Jan 23, 2024
f3856bd
Update .github/workflows/test.yml
trxcllnt Jan 23, 2024
1c9b9c4
Update .github/workflows/test.yml
trxcllnt Jan 23, 2024
7e12802
Apply suggestions from code review
trxcllnt Jan 23, 2024
c594e11
Update .github/workflows/test.yml
trxcllnt Jan 23, 2024
235f101
Merge branch 'branch-24.04' into build-rapids
trxcllnt Jan 29, 2024
fa839d2
don't set -E
trxcllnt Jan 29, 2024
49eaa6a
trace output of rapids-make-conda-env
trxcllnt Jan 29, 2024
1265d84
trace output
trxcllnt Jan 29, 2024
7b4775c
Don't set -Eeuxo pipefail
trxcllnt Jan 29, 2024
fdbb17c
don't trace output
trxcllnt Jan 29, 2024
c032506
Merge branch 'branch-24.04' into build-rapids
bdice Jan 30, 2024
f852948
Rerun CI.
bdice Feb 3, 2024
7b95772
rename shared-action-workflows -> shared-workflows
trxcllnt Feb 3, 2024
f21e0ad
don't do any gh or glab API calls when --clone-upstream is passed
trxcllnt Feb 3, 2024
307e75e
bump feature version
trxcllnt Feb 3, 2024
521c69f
use --clone-upstream, remove GH_TOKEN secret
trxcllnt Feb 3, 2024
0db3739
debug
trxcllnt Feb 3, 2024
9b6eb4d
Merge branch 'branch-24.04' into build-rapids
bdice Feb 6, 2024
5ee6aaf
add cumlprims_mg and cugraph-ops private deploy keys
trxcllnt Feb 6, 2024
bdf1b80
temporarily allow unbound variables while activating the conda env (#…
trxcllnt Jan 29, 2024
52e1d5e
Rerun CI.
bdice Feb 3, 2024
b973cb0
rename shared-action-workflows -> shared-workflows
trxcllnt Feb 3, 2024
fdf733b
don't do any gh or glab API calls when --clone-upstream is passed
trxcllnt Feb 3, 2024
a6973ac
bump feature version
trxcllnt Feb 3, 2024
2bad048
use --clone-upstream, remove GH_TOKEN secret
trxcllnt Feb 3, 2024
9dc4b4d
debug
trxcllnt Feb 3, 2024
e3f9520
Fix mambaforge shell history (#219)
trxcllnt Feb 3, 2024
134c91d
Add cugraph-equivariant (#218)
trxcllnt Feb 3, 2024
806a6fd
Fix buildx setup on github runners (#220)
trxcllnt Feb 5, 2024
4754fb7
Merge branch 'build-rapids' of github.com:bdice/devcontainers into bu…
trxcllnt Feb 6, 2024
1e2de4b
pass repo deploy key names to action
trxcllnt Feb 6, 2024
3034eed
remove debug flag
trxcllnt Feb 6, 2024
2bcb95d
login to dockerhub so we don't hit rate limits
trxcllnt Feb 5, 2024
e3940fe
Merge branch 'branch-24.04' into build-rapids
trxcllnt Feb 6, 2024
3d91ddf
move rapids build job into reusable workflow, schedule it to run nightly
trxcllnt Feb 7, 2024
46fbaa8
Merge branch 'build-rapids' of github.com:bdice/devcontainers into bu…
trxcllnt Feb 7, 2024
e9e36e1
fix event name check
trxcllnt Feb 7, 2024
ade93e5
Merge branch 'branch-24.04' of github.com:rapidsai/devcontainers into…
trxcllnt Feb 9, 2024
40529a5
pass arch and cuda to build-in-devcontainer.yaml
trxcllnt Feb 12, 2024
12e7aad
Merge branch 'branch-24.04' of github.com:rapidsai/devcontainers into…
trxcllnt Feb 12, 2024
b8d3c77
add more system deps for pip containers
trxcllnt Feb 12, 2024
8607a24
build CUDA 12.2
trxcllnt Feb 12, 2024
b2f3f2d
temporarily disable building features/images when test.yml changes
trxcllnt Feb 12, 2024
8c5d7f7
escape periods
trxcllnt Feb 12, 2024
deb45cb
just build x86 CUDA 12.0
trxcllnt Feb 15, 2024
47887c8
use CUDA 12.3 for new pip container, install additional CTK libs in p…
trxcllnt Feb 15, 2024
ff021e1
make conda container use CUDA 12.3
trxcllnt Feb 15, 2024
baf6092
Merge branch 'branch-24.04' of github.com:rapidsai/devcontainers into…
trxcllnt Feb 16, 2024
875eec4
build CUDA 12.0 and 12.2 now that we have pip containers
trxcllnt Feb 16, 2024
cd842ae
12.3 -> 12.2
trxcllnt Feb 16, 2024
e0ea956
set -DBUILD_SHARED_LIBS=ON
trxcllnt Feb 16, 2024
bd5001c
revert changes to feature-matrix and image-matrix actions [skip-ci]
trxcllnt Feb 20, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
51 changes: 51 additions & 0 deletions .github/workflows/build-all-rapids-repos.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,51 @@
name: Build all RAPIDS repositories

on:
schedule:
- cron: '0 0 * * *'
workflow_call:

jobs:
check-event:
name: Check GH Event
runs-on: ubuntu-latest
outputs:
ok: ${{ steps.check_gh_event.outputs.ok }}
steps:
- id: check_gh_event
name: Check GH Event
shell: bash
run: |
[[ '${{ github.event_name }}' == 'push' && '${{ github.repository }}' == 'rapidsai/devcontainers' ]] || \
[[ '${{ github.event_name }}' == 'schedule' && '${{ github.repository }}' == 'rapidsai/devcontainers' ]] || \
[[ '${{ github.event_name }}' == 'pull_request' && '${{ github.repository }}' != 'rapidsai/devcontainers' ]] \
&& echo "ok=true" | tee -a $GITHUB_OUTPUT \
|| echo "ok=false" | tee -a $GITHUB_OUTPUT;

build-all-rapids-repos:
name: Build all RAPIDS repos
if: needs.check-event.outputs.ok == 'true'
needs: check-event
secrets: inherit
uses: rapidsai/shared-workflows/.github/workflows/build-in-devcontainer.yaml@fix/devcontainer-json-location
with:
arch: '["amd64", "arm64"]'
trxcllnt marked this conversation as resolved.
Show resolved Hide resolved
cuda: '["12.0"]'
node_type: cpu32
extra-repo-deploy-key: CUMLPRIMS_SSH_PRIVATE_DEPLOY_KEY
extra-repo-deploy-key-2: CUGRAPH_OPS_SSH_PRIVATE_DEPLOY_KEY
build_command: |
sccache -z;
clone-all --verbose --clone-upstream --no-update-env;
rapids-generate-scripts;
rapids-make-${PYTHON_PACKAGE_MANAGER}-env;
build-all \
--verbose \
-j$(nproc --ignore=1) \
-DBUILD_TESTS=ON \
-DBUILD_BENCHMARKS=ON \
-DBUILD_ANN_BENCH=ON \
-DBUILD_PRIMS_BENCH=ON \
$([ "pip" = ${PYTHON_PACKAGE_MANAGER} ] && echo -DUSE_LIBARROW_FROM_PYARROW=ON || echo) \
;
sccache -s;
7 changes: 7 additions & 0 deletions .github/workflows/test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -145,3 +145,10 @@ jobs:
features: "${{ toJSON(matrix.features) }}"
container_env: "${{ toJSON(matrix.env) }}"
repo: "${{ vars.DOCKERHUB_REPOSITORY || github.repository }}"

build-all-rapids-repos:
name: Build all RAPIDS repos
if: needs.check-event.outputs.ok == 'true'
bdice marked this conversation as resolved.
Show resolved Hide resolved
bdice marked this conversation as resolved.
Show resolved Hide resolved
trxcllnt marked this conversation as resolved.
Show resolved Hide resolved
needs: check-event
secrets: inherit
uses: ./.github/workflows/build-all-rapids-repos.yml
Original file line number Diff line number Diff line change
Expand Up @@ -99,6 +99,6 @@ make_conda_env() {
. /opt/conda/etc/profile.d/conda.sh;
. /opt/conda/etc/profile.d/mamba.sh;

(make_conda_env "${DEFAULT_CONDA_ENV:-rapids}" "$@");
make_conda_env "${DEFAULT_CONDA_ENV:-rapids}" "$@";

. /etc/profile.d/*-mambaforge.sh;
Original file line number Diff line number Diff line change
Expand Up @@ -121,7 +121,7 @@ make_pip_env() {
fi
}

(make_pip_env "${DEFAULT_VIRTUAL_ENV:-rapids}" "$@");
make_pip_env "${DEFAULT_VIRTUAL_ENV:-rapids}" "$@";

if test -f ~/.local/share/venvs/${DEFAULT_VIRTUAL_ENV:-rapids}/bin/activate; then
. ~/.local/share/venvs/${DEFAULT_VIRTUAL_ENV:-rapids}/bin/activate;
Expand Down
2 changes: 1 addition & 1 deletion features/src/utils/devcontainer-feature.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{
"name": "devcontainer-utils",
"id": "utils",
"version": "24.4.6",
"version": "24.4.7",
"description": "A feature to install RAPIDS devcontainer utility scripts",
"containerEnv": {
"BASH_ENV": "/etc/bash.bash_env"
Expand Down
31 changes: 22 additions & 9 deletions features/src/utils/opt/devcontainer/bin/github/repo/clone.sh
Original file line number Diff line number Diff line change
Expand Up @@ -59,8 +59,6 @@ clone_github_repo() {

set -euo pipefail;

source devcontainer-utils-init-github-cli;

local branch=;
local no_fork=;
local clone_upstream=;
Expand Down Expand Up @@ -92,7 +90,17 @@ clone_github_repo() {
local fork=;
local owner=;

if test -z "${clone_upstream:-}"; then
if test -z "${no_fork:-}" && \
test -z "${clone_upstream:-}" && \
devcontainer-utils-shell-is-interactive; then
# shellcheck disable=SC1091
. devcontainer-utils-init-github-cli;
user="${GITHUB_USER:-}";
fi

if test -n "${clone_upstream:-}"; then
fork="${upstream}";
else
name="$(get_repo_name "${upstream}")";
owner="$(get_repo_owner "${upstream}")";
user="${GITHUB_USER:-"${owner}"}";
Expand All @@ -106,7 +114,7 @@ clone_github_repo() {
devcontainer-utils-shell-is-interactive; then
while true; do
local CHOICE;
read -p "'${GITHUB_HOST:-github.com}/${user}/${name}.git' not found.
read -rp "'${GITHUB_HOST:-github.com}/${user}/${name}.git' not found.
Fork '${upstream}' into '${user}/${name}' now (y/n)? " CHOICE <$(tty)
case "${CHOICE:-}" in
[Nn]* ) origin="${upstream}"; break;;
Expand All @@ -118,12 +126,17 @@ clone_github_repo() {
done
fi

if [ "$(gh config get git_protocol)" = "ssh" ]; then
origin="$(get_repo_ssh_url "${origin}")";
upstream="$(get_repo_ssh_url "${upstream}")";
if gh auth status >/dev/null 2>&1; then
if [ "$(gh config get git_protocol)" = "ssh" ]; then
origin="$(get_repo_ssh_url "${origin}")";
upstream="$(get_repo_ssh_url "${upstream}")";
else
origin="$(get_repo_git_url "${origin}")";
upstream="$(get_repo_git_url "${upstream}")";
fi
else
origin="$(get_repo_git_url "${origin}")";
upstream="$(get_repo_git_url "${upstream}")";
origin="https://${GITHUB_HOST:-github.com}/${origin}.git";
upstream="https://${GITHUB_HOST:-github.com}/${upstream}.git";
fi

devcontainer-utils-clone-git-repo \
Expand Down
31 changes: 22 additions & 9 deletions features/src/utils/opt/devcontainer/bin/gitlab/repo/clone.sh
Original file line number Diff line number Diff line change
Expand Up @@ -85,8 +85,6 @@ clone_gitlab_repo() {

set -euo pipefail;

source devcontainer-utils-init-gitlab-cli;

local branch=;
local no_fork=;
local clone_upstream=;
Expand Down Expand Up @@ -118,7 +116,17 @@ clone_gitlab_repo() {
local user=;
local owner=;

if test -z "${clone_upstream:-}"; then
if test -z "${no_fork:-}" && \
test -z "${clone_upstream:-}" && \
devcontainer-utils-shell-is-interactive; then
# shellcheck disable=SC1091
. devcontainer-utils-init-gitlab-cli;
user="${GITLAB_USER:-}";
fi

if test -n "${clone_upstream:-}"; then
fork="${upstream}";
else
name="$(get_repo_name "${upstream}")";
owner="$(get_repo_owner "${upstream}")";
user="${GITLAB_USER:-"${owner}"}";
Expand All @@ -132,7 +140,7 @@ clone_gitlab_repo() {
devcontainer-utils-shell-is-interactive; then
while true; do
local CHOICE;
read -p "'${GITLAB_HOST:-gitlab.com}/${user}/${name}.git' not found.
read -rp "'${GITLAB_HOST:-gitlab.com}/${user}/${name}.git' not found.
Fork '${upstream}' into '${user}/${name}' now (y/n)? " CHOICE <$(tty)
case "${CHOICE:-}" in
[Nn]* ) origin="${upstream}"; break;;
Expand All @@ -144,12 +152,17 @@ clone_gitlab_repo() {
done
fi

if [ "$(glab config get git_protocol)" = "ssh" ]; then
origin="$(get_repo_ssh_url "${origin}")";
upstream="$(get_repo_ssh_url "${upstream}")";
if ! glab auth status 2>&1 | grep -q "No token provided"; then
if [ "$(glab config get git_protocol)" = "ssh" ]; then
origin="$(get_repo_ssh_url "${origin}")";
upstream="$(get_repo_ssh_url "${upstream}")";
else
origin="$(get_repo_git_url "${origin}")";
upstream="$(get_repo_git_url "${upstream}")";
fi
else
origin="$(get_repo_git_url "${origin}")";
upstream="$(get_repo_git_url "${upstream}")";
origin="https://${GITLAB_HOST:-gitlab.com}/${origin}.git";
upstream="https://${GITLAB_HOST:-gitlab.com}/${upstream}.git";
fi

devcontainer-utils-clone-git-repo \
Expand Down
Loading