forked from apache/datafusion-ray
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Adding Datafusion Ray tests on an Kind cluster using the Helm chart (a…
…pache#35) * Adding Datafusion Ray tests on an Kind cluster using the Helm chart * Using hardcoded hashes for actions * Pinning dependencies for main * Cheating about the semver regexp * Restored previous version of the action * Empty commit * Updated to latest version of free disk space
- Loading branch information
Showing
2 changed files
with
82 additions
and
1 deletion.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -20,6 +20,11 @@ on: | |
push: | ||
pull_request: | ||
|
||
env: | ||
RAY_HELM_VERSION: 1.1.0 | ||
PYTHON_VERSION: 3.9 | ||
IMAGE_REPOSITORY: ghcr.io/apache/datafusion-ray | ||
|
||
jobs: | ||
build: | ||
runs-on: ubuntu-latest | ||
|
@@ -32,14 +37,15 @@ jobs: | |
uses: docker/metadata-action@v5 | ||
with: | ||
images: | | ||
ghcr.io/apache/datafusion-ray | ||
${{ env.IMAGE_REPOSITORY }} | ||
tags: | | ||
type=ref,event=branch | ||
type=ref,event=pr | ||
type=semver,pattern={{version}} | ||
type=semver,pattern={{major}}.{{minor}} | ||
type=semver,pattern={{major}} | ||
type=sha | ||
- name: Set up Docker Buildx | ||
uses: docker/setup-buildx-action@v3 | ||
|
||
|
@@ -59,3 +65,59 @@ jobs: | |
tags: ${{ steps.meta.outputs.tags }} | ||
labels: ${{ steps.meta.outputs.labels }} | ||
push: ${{ startsWith(github.ref, 'refs/tags/') }} | ||
load: true | ||
|
||
- name: Kind Cluster | ||
uses: helm/[email protected] | ||
with: | ||
config: ./k8s/kind-config.yaml | ||
|
||
- name: Free Disk Space (Ubuntu) | ||
uses: jlumbroso/[email protected] | ||
with: | ||
# this might remove tools that are actually needed, | ||
# when set to "true" but frees about 6 GB | ||
tool-cache: true | ||
docker-images: false | ||
|
||
- name: Extract short SHA | ||
run: | | ||
SHORT_SHA=$(echo "${GITHUB_SHA}" | cut -c1-7) | ||
echo "IMAGE_TAG=sha-${SHORT_SHA}" >> "$GITHUB_ENV" | ||
echo "Extracted short SHA tag: sha-${SHORT_SHA}" | ||
- name: Load Docker image into Kind cluster | ||
run: | | ||
kind load docker-image ${{ env.IMAGE_REPOSITORY }}:${{ env.IMAGE_TAG }} -n chart-testing | ||
- name: Install Helm | ||
uses: azure/[email protected] | ||
with: | ||
version: "3.16.0" | ||
|
||
- name: Deploy helm chart | ||
run: | | ||
helm repo add kuberay https://ray-project.github.io/kuberay-helm/ | ||
helm install kuberay-operator kuberay/kuberay-operator --version ${{ env.RAY_HELM_VERSION }} | ||
helm install raycluster kuberay/ray-cluster --version ${{ env.RAY_HELM_VERSION }} \ | ||
--set image.repository=${{ env.IMAGE_REPOSITORY }} \ | ||
--set image.tag=${{ env.IMAGE_TAG }} \ | ||
--set imagePullPolicy=Always | ||
echo "Deployed Ray cluster with image repository: ${{ env.IMAGE_REPOSITORY }} and tag: ${{ env.IMAGE_TAG }}" | ||
- name: Set up Python | ||
uses: actions/setup-python@v3 | ||
with: | ||
python-version: ${{ env.PYTHON_VERSION }} | ||
|
||
- name: Install python dependencies | ||
run: | | ||
python -m pip install --upgrade pip | ||
pip install -r requirements-in.txt | ||
- name: Submit an example ray Job | ||
run: | | ||
kubectl port-forward service/raycluster-kuberay-head-svc 8265:8265 & | ||
export RAY_ADDRESS="http://127.0.0.1:8265" | ||
pip install "ray[default]" | ||
ray job submit --working-dir ./examples/ -- python3 tips.py |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,19 @@ | ||
kind: Cluster | ||
apiVersion: kind.x-k8s.io/v1alpha4 | ||
nodes: | ||
- role: control-plane | ||
extraMounts: | ||
- hostPath: /tmp/kind-node-disk | ||
containerPath: /var/lib/containerd | ||
- role: worker | ||
extraMounts: | ||
- hostPath: /tmp/kind-node-disk1 | ||
containerPath: /var/lib/containerd | ||
- role: worker | ||
extraMounts: | ||
- hostPath: /tmp/kind-node-disk2 | ||
containerPath: /var/lib/containerd | ||
- role: worker | ||
extraMounts: | ||
- hostPath: /tmp/kind-node-disk3 | ||
containerPath: /var/lib/containerd |