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

Sync with Upstream #47

Merged
merged 21 commits into from
Apr 6, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
21 commits
Select commit Hold shift + click to select a range
49b2f9d
fixed incorrect logic in Codeflare-SDK release sync with notebooks
abhijeet-dhumal Feb 21, 2024
6b5acfc
Display input for KubeRay parameter and check for existence
ChristianZaccaria Feb 20, 2024
fa88636
add: update machinepool tests to identify machines based on label
VanillaSpoon Feb 9, 2024
8aeaefc
remove Sync ODH-notebooks CI workflow to add this step in Codeflare-S…
abhijeet-dhumal Feb 27, 2024
7a9b5bb
RHOAIENG-3771 - Reduce execution time of E2E tests
jiripetrlik Feb 27, 2024
bb24607
Update README.md with ODH/CFO build instructions
sutaakar Feb 28, 2024
7419586
e2e tests: Fix finishing condition in ODH e2e test
sutaakar Mar 8, 2024
2b5d9b8
Fix e2e test - invalid go version error
ChristianZaccaria Mar 25, 2024
91f8bf3
add raycluster controller to CFO
KPostOffice Jan 25, 2024
4f0c9c1
make oauth part of config and remove annotation check
KPostOffice Apr 2, 2024
9ea041f
address comments from PR review
KPostOffice Apr 2, 2024
5e5f5b3
Move controllers package into pkg
astefanutti Apr 3, 2024
2f100af
Scope RayCluster finalizer into ray.openshift.ai
astefanutti Apr 3, 2024
22d75f6
Add missing RBAC for oauth-proxy ClusterRoleBinding
astefanutti Apr 3, 2024
a8e2a93
Disable MCAD by default
anishasthana Apr 4, 2024
9721e0e
Enable MCAD in e2e tests
astefanutti Apr 5, 2024
2b0453e
Enable MCAD in OLM tests
astefanutti Apr 5, 2024
465da20
Refactor creation logic of ingress/routes into RayCluster Controller …
ChristianZaccaria Apr 5, 2024
be7ac07
Removed InstaScale & MCAD from release workflow (#492)
Bobbins228 Apr 5, 2024
c771aae
Clean removal of MCADv1 and Instascale (#501)
dgrove-oss Apr 5, 2024
faff28a
Update dependency versions for release v1.3.0 (#502)
codeflare-machine-account Apr 5, 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
1 change: 1 addition & 0 deletions .github/workflows/e2e_tests.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -60,6 +60,7 @@ jobs:
run: |
echo Deploying CodeFlare operator
IMG="${REGISTRY_ADDRESS}"/codeflare-operator
sed -i 's/RayDashboardOAuthEnabled: pointer.Bool(true)/RayDashboardOAuthEnabled: pointer.Bool(false)/' main.go
make image-push -e IMG="${IMG}"
make deploy -e IMG="${IMG}" -e ENV="e2e"
kubectl wait --timeout=120s --for=condition=Available=true deployment -n openshift-operators codeflare-operator-manager
Expand Down
132 changes: 0 additions & 132 deletions .github/workflows/odh-notebooks-sync.yml

This file was deleted.

4 changes: 4 additions & 0 deletions .github/workflows/olm_tests.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -92,6 +92,10 @@ jobs:
echo Waiting for Deployment to be ready
timeout 60 bash -c 'until [[ $(kubectl get deployment/codeflare-operator-manager -n '${{ env.SUBSCRIPTION_NAMESPACE }}') ]]; do sleep 5 && echo "$(kubectl get deployment/codeflare-operator-manager -n '${{ env.SUBSCRIPTION_NAMESPACE }}')"; done'
kubectl wait -n ${{ env.SUBSCRIPTION_NAMESPACE }} deployment/codeflare-operator-manager --for=condition=Available=true --timeout=60s

echo Patch the CodeFlare operator ConfigMap
kubectl patch -n '${{ env.SUBSCRIPTION_NAMESPACE }}' cm codeflare-operator-config --type merge -p '{"data":{"config.yaml":"mcad:\n enabled: true"}}'

env:
CATALOG_SOURCE_NAME: "codeflare-olm-test"
CATALOG_SOURCE_NAMESPACE: "olm"
Expand Down
104 changes: 18 additions & 86 deletions .github/workflows/project-codeflare-release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,15 +10,9 @@ on:
replaces:
description: 'The previous operator semantic version that this release replaces (for example: v0.0.0)'
required: true
mcad-version:
description: 'Version of multi-cluster-app-dispatcher to be released (for example: v0.0.0)'
required: true
codeflare-sdk-version:
description: 'Version of CodeFlare-SDK to be released (for example: v0.0.0)'
required: true
instascale-version:
description: 'Version of InstaScale to be released (for example: v0.0.0)'
required: true
kuberay-version:
description: 'Tested version of KubeRay (for example: v0.0.0)'
required: true
Expand Down Expand Up @@ -48,78 +42,15 @@ jobs:
echo "Below are the release parameters set for the workflow:"
echo "Operator Version: ${{ github.event.inputs.operator-version }}"
echo "Replaces: ${{ github.event.inputs.replaces }}"
echo "MCAD Version: ${{ github.event.inputs.mcad-version }}"
echo "CodeFlare SDK Version: ${{ github.event.inputs.codeflare-sdk-version }}"
echo "InstaScale Version: ${{ github.event.inputs.instascale-version }}"
echo "Tested KubeRay Version: ${{ github.event.inputs.kuberay-version }}"
echo "Is Stable: ${{ github.event.inputs.is-stable }}"
echo "CodeFlare Repository Organization: ${{ github.event.inputs.codeflare-repository-organization }}"
echo "Quay Organization: ${{ github.event.inputs.quay-organization }}"
echo "Community Operators Prod Organization: ${{ github.event.inputs.community-operators-prod-organization }}"

release-mcad:
runs-on: ubuntu-latest

steps:
- name: Check if MCAD release does exist
run: |
status_code=$(curl -s -o /dev/null -w "%{http_code}" https://github.com/project-codeflare/multi-cluster-app-dispatcher/releases/tag/${{ github.event.inputs.mcad-version }})
if [[ "$status_code" == "200" ]]; then
echo "MCAD release with version ${{ github.event.inputs.mcad-version }} already exist. Will not create MCAD release."
fi
echo "MCAD_RELEASE_STATUS_CODE=$status_code" >> $GITHUB_ENV

- name: Release MCAD
run: |
gh workflow run mcad-release.yml --repo ${{ github.event.inputs.codeflare-repository-organization }}/multi-cluster-app-dispatcher --ref go-1.20 --field tag=${{ github.event.inputs.mcad-version }}
env:
GITHUB_TOKEN: ${{ secrets.CODEFLARE_MACHINE_ACCOUNT_TOKEN }}
shell: bash
if: ${{ env.MCAD_RELEASE_STATUS_CODE != '200' }}

- name: Wait for MCAD run to finish
run: |
# wait for a while for Run to be started
sleep 5
run_id=$(gh run list --workflow mcad-release.yml --repo ${{ github.event.inputs.codeflare-repository-organization }}/multi-cluster-app-dispatcher --limit 1 --json databaseId --jq .[].databaseId)
gh run watch ${run_id} --repo ${{ github.event.inputs.codeflare-repository-organization }}/multi-cluster-app-dispatcher --interval 10 --exit-status
env:
GITHUB_TOKEN: ${{ secrets.CODEFLARE_MACHINE_ACCOUNT_TOKEN }}
shell: bash
if: ${{ env.MCAD_RELEASE_STATUS_CODE != '200' }}

release-instascale:
needs: release-mcad
runs-on: ubuntu-latest

steps:
- name: Check if Instascale release does exist
run: |
status_code=$(curl -s -o /dev/null -w "%{http_code}" https://github.com/project-codeflare/instascale/releases/tag/${{ github.event.inputs.instascale-version }})
if [[ "$status_code" == "200" ]]; then
echo "Instascale release with version ${{ github.event.inputs.instascale-version }} already exist. Will not create Instascale release."
fi
echo "INSTASCALE_RELEASE_STATUS_CODE=$status_code" >> $GITHUB_ENV

- name: Release InstaScale
run: |
gh workflow run instascale-release.yml --repo ${{ github.event.inputs.codeflare-repository-organization }}/instascale --ref ${{ github.ref }} --field tag=${{ github.event.inputs.instascale-version }} --field mcad-version=${{ github.event.inputs.mcad-version }}
env:
GITHUB_TOKEN: ${{ secrets.CODEFLARE_MACHINE_ACCOUNT_TOKEN }}
shell: bash
if: ${{ env.INSTASCALE_RELEASE_STATUS_CODE != '200' }}

- name: Wait for InstaScale run to finish
run: |
# wait for a while for Run to be started
sleep 5
run_id=$(gh run list --workflow instascale-release.yml --repo ${{ github.event.inputs.codeflare-repository-organization }}/instascale --limit 1 --json databaseId --jq .[].databaseId)
gh run watch ${run_id} --repo ${{ github.event.inputs.codeflare-repository-organization }}/instascale --interval 10 --exit-status
env:
GITHUB_TOKEN: ${{ secrets.CODEFLARE_MACHINE_ACCOUNT_TOKEN }}
shell: bash
if: ${{ env.INSTASCALE_RELEASE_STATUS_CODE != '200' }}

release-codeflare-sdk:
needs: check-kuberay-version
runs-on: ubuntu-latest

steps:
Expand Down Expand Up @@ -152,27 +83,14 @@ jobs:
shell: bash
if: ${{ env.SDK_RELEASE_STATUS_CODE != '200' }}

- name: Sync ODH Notebooks
run: |
gh workflow run odh-notebooks-sync.yml \
--repo ${{ github.event.inputs.codeflare-repository-organization }}/codeflare-operator \
--ref ${{ github.ref }} \
--field upstream-repository-organization=opendatahub-io
--field codeflare-repository-organization=${{ github.event.inputs.codeflare-repository-organization }} \
--field codeflare_sdk_release_version=${{ github.event.inputs.codeflare-sdk-version }}
env:
GITHUB_TOKEN: ${{ secrets.CODEFLARE_MACHINE_ACCOUNT_TOKEN }}
shell: bash
if: ${{ env.SDK_RELEASE_STATUS_CODE == '200' }}

release-codeflare-operator:
needs: [release-mcad, release-instascale, release-codeflare-sdk]
needs: [release-codeflare-sdk]
runs-on: ubuntu-latest

steps:
- name: Release CodeFlare operator
run: |
gh workflow run tag-and-build.yml --repo ${{ github.event.inputs.codeflare-repository-organization }}/codeflare-operator --ref ${{ github.ref }} --field is-stable=${{ github.event.inputs.is-stable }} --field version=${{ github.event.inputs.operator-version }} --field replaces=${{ github.event.inputs.replaces }} --field mcad-version=${{ github.event.inputs.mcad-version }} --field codeflare-sdk-version=${{ github.event.inputs.codeflare-sdk-version }} --field instascale-version=${{ github.event.inputs.instascale-version }} --field kuberay-version=${{ github.event.inputs.kuberay-version }} --field quay-organization=${{ github.event.inputs.quay-organization }} --field community-operators-prod-fork-organization=${{ github.event.inputs.codeflare-repository-organization }} --field community-operators-prod-organization=${{ github.event.inputs.community-operators-prod-organization }}
gh workflow run tag-and-build.yml --repo ${{ github.event.inputs.codeflare-repository-organization }}/codeflare-operator --ref ${{ github.ref }} --field is-stable=${{ github.event.inputs.is-stable }} --field version=${{ github.event.inputs.operator-version }} --field replaces=${{ github.event.inputs.replaces }} --field codeflare-sdk-version=${{ github.event.inputs.codeflare-sdk-version }} --field kuberay-version=${{ github.event.inputs.kuberay-version }} --field quay-organization=${{ github.event.inputs.quay-organization }} --field community-operators-prod-fork-organization=${{ github.event.inputs.codeflare-repository-organization }} --field community-operators-prod-organization=${{ github.event.inputs.community-operators-prod-organization }}
env:
GITHUB_TOKEN: ${{ secrets.CODEFLARE_MACHINE_ACCOUNT_TOKEN }}
shell: bash
Expand All @@ -186,3 +104,17 @@ jobs:
env:
GITHUB_TOKEN: ${{ secrets.CODEFLARE_MACHINE_ACCOUNT_TOKEN }}
shell: bash

check-kuberay-version:
runs-on: ubuntu-latest

steps:
- name: Check if KubeRay release exists
run: |
status_code=$(curl -s -o /dev/null -w "%{http_code}" https://github.com/ray-project/kuberay/releases/tag/${{ github.event.inputs.kuberay-version }})
if [[ "$status_code" == "200" ]]; then
echo "KubeRay release with version ${{ github.event.inputs.kuberay-version }} exists and available to use."
else
echo "KubeRay release with version ${{ github.event.inputs.kuberay-version }} does not exist. Please select an existing version."
exit 1
fi
19 changes: 0 additions & 19 deletions .github/workflows/tag-and-build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -12,18 +12,10 @@ on:
description: 'The previous semantic version that this tag replaces.'
required: true
default: 'v0.0.0-dev'
mcad-version:
description: 'Published version of multi-cluster-app-dispatcher'
required: true
default: 'v0.0.0-dev'
codeflare-sdk-version:
description: 'Published version of CodeFlare-SDK'
required: true
default: 'v0.0.0-dev'
instascale-version:
description: 'Published version of InstaScale'
required: true
default: 'v0.0.0-dev'
kuberay-version:
description: 'Tested version of KubeRay'
required: true
Expand Down Expand Up @@ -90,18 +82,9 @@ jobs:
- name: Adjust Compatibility Matrix in readme
run: |
sed -i -E "s|(.*CodeFlare Operator.*\[).*(\].*releases/tag/).*(\).*)|\1${{ github.event.inputs.version }}\2${{ github.event.inputs.version }}\3|" README.md
sed -i -E "s|(.*Multi-Cluster App Dispatcher.*\[).*(\].*releases/tag/).*(\).*)|\1${{ github.event.inputs.mcad-version }}\2${{ github.event.inputs.mcad-version }}\3|" README.md
sed -i -E "s|(.*CodeFlare-SDK.*\[).*(\].*releases/tag/).*(\).*)|\1${{ github.event.inputs.codeflare-sdk-version }}\2${{ github.event.inputs.codeflare-sdk-version }}\3|" README.md
sed -i -E "s|(.*InstaScale.*\[).*(\].*releases/tag/).*(\).*)|\1${{ github.event.inputs.instascale-version }}\2${{ github.event.inputs.instascale-version }}\3|" README.md
sed -i -E "s|(.*KubeRay.*\[).*(\].*releases/tag/).*(\).*)|\1${{ github.event.inputs.kuberay-version }}\2${{ github.event.inputs.kuberay-version }}\3|" README.md

- name: Adjust MCAD, SDK and InstaScale dependencies in the code
run: |
sed -i -E "s/(.*MCAD_VERSION \?= ).*/\1${{ github.event.inputs.mcad-version }}/" Makefile
sed -i -E "s/(.*MCAD_REF \?= ).*/\1release-\${MCAD_VERSION}/" Makefile
sed -i -E "s/(.*INSTASCALE_VERSION \?= ).*/\1${{ github.event.inputs.instascale-version }}/" Makefile
sed -i -E "s/(.*KUBERAY_VERSION \?= ).*/\1${{ github.event.inputs.kuberay-version }}/" Makefile

- name: Update image version in params.env
run: |
VERSION=${{ github.event.inputs.version }} perl -i -pe 's/:(.*)$/:$ENV{"VERSION"}/' config/manager/params.env
Expand Down Expand Up @@ -192,8 +175,6 @@ jobs:
env:
VERSION: ${{ github.event.inputs.version }}
PREVIOUS_VERSION: ${{ github.event.inputs.replaces }}
INSTASCALE_VERSION: ${{ github.event.inputs.instascale-version }}
MCAD_VERSION: ${{ github.event.inputs.mcad-version }}
GH_TOKEN: ${{ secrets.CODEFLARE_MACHINE_ACCOUNT_TOKEN }}
OPERATORS_REPO_FORK_ORG: ${{ github.event.inputs.community-operators-prod-fork-organization }}
OPERATORS_REPO_ORG: ${{ github.event.inputs.community-operators-prod-organization }}
Expand Down
Loading