diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml new file mode 100644 index 0000000..b0c7102 --- /dev/null +++ b/.github/workflows/release.yml @@ -0,0 +1,28 @@ +name: release +on: + release: + types: + - published +jobs: + release: + runs-on: ubuntu-22.04 + steps: + - uses: actions/checkout@v2 + with: + fetch-depth: '0' # ensure tag lookup works + - run: | + #!/usr/bin/env bash + set -e -u -x -o pipefail + export VERSION=${GITHUB_REF:11} + make helm-repo-login + make push-chart + env: + GHCR_PAT: ${{ secrets.RELEASE_PAT }} + USERNAME: alex-treebeard + - uses: EndBug/add-and-commit@v7.0.0 + with: + author_name: github-actions + author_email: 41898282+github-actions[bot]@users.noreply.github.com + add: helm/kubeflow/values.yaml + branch: main + message: Published new version \ No newline at end of file diff --git a/Makefile b/Makefile index de93abe..b491695 100644 --- a/Makefile +++ b/Makefile @@ -52,4 +52,4 @@ push-chart: build-chart helm push helm/kubeflow-$(VERSION).tgz oci://ghcr.io/treebeardtech/helm helm-repo-login: - echo $(GHCR_PAT) | docker login ghcr.io -u alex-treebeard --password-stdin + echo $(GHCR_PAT) | docker login ghcr.io -u $(USERNAME) --password-stdin diff --git a/README.md b/README.md index 66db124..588e1aa 100644 --- a/README.md +++ b/README.md @@ -24,7 +24,6 @@ ## About this project - This project simplifies MLOps in Kubernetes by providing Kubeflow in Helm and Terraform package formats. This allows scaling Kubeflow usage with the rest of your production systems. Kubeflow provides a cloud-native AI platform which can be used to deploy applications in @@ -61,7 +60,7 @@ The default configuration of Kubeflow provided is designed to run on a cluster w ## Getting Started -Note that as all of our examples are implemented in Terraform, we recommend using the Terraform module to start off. The [helm super-chart](https://github.com/treebeardtech/kubeflow/tree/main/helm/treebeard-kubeflow) is likely to be a more viable interface as you move into production. +Note that as all of our examples are implemented in Terraform, we recommend using the Terraform module to start off. The [helm charts](helm) are likely to be a more viable interface as you move into production. We recommend trying out this module in a development environment first. @@ -78,7 +77,12 @@ To do so, follow the [k3s tutorial](examples/k3s). ### Install via helm CLI ```sh -helm install kf oci://ghcr.io/treebeardtech/helm/treebeard-kubeflow --version x.y.z +# install argo (necessary for orchestration) +helm repo add argo-cd https://argoproj.github.io/argo-helm +helm install -n argocd --create-namespace argo-cd argo-cd/argo-cd + +# install kubeflow +helm install kubeflow -n argocd oci://ghcr.io/treebeardtech/helm/kubeflow --version x.y.z ``` In order to integrate Kubeflow with your production systems there are some changes you @@ -154,7 +158,7 @@ See the [gitops example](examples/k3s-gitops) for details. ## Troubleshooting -## Reconfiguration challenges +### Reconfiguration challenges Moving the deployment between different states of configuration can be challenging due to the dependencies between components in the cluster. diff --git a/docs/arch.png b/docs/arch.png index e79f0fa..99ad5cd 100644 Binary files a/docs/arch.png and b/docs/arch.png differ diff --git a/helm/kubeflow/values.yaml b/helm/kubeflow/values.yaml index 1408e9c..4dcf8da 100644 --- a/helm/kubeflow/values.yaml +++ b/helm/kubeflow/values.yaml @@ -6,7 +6,7 @@ finalizers: - resources-finalizer.argocd.argoproj.io project: default repoURL: ghcr.io/treebeardtech/helm -targetRevision: "0.3.1" +targetRevision: "0.4.0-dev9" chart: kubeflow-core destination: server: https://kubernetes.default.svc