diff --git a/kubeflow-volumes-web-app.yaml b/kubeflow-volumes-web-app.yaml new file mode 100644 index 00000000000..7ff6b3ebbaa --- /dev/null +++ b/kubeflow-volumes-web-app.yaml @@ -0,0 +1,78 @@ +package: + name: kubeflow-volumes-web-app + version: 1.7.0 + epoch: 0 + description: Kubeflow volumes web app component + copyright: + - license: Apache-2.0 + dependencies: + runtime: + - python3 + - py3-setuptools + - bash + +environment: + contents: + packages: + - wolfi-base + - busybox + - ca-certificates-bundle + - build-base + - python3 + - nodejs-16 + - py3-setuptools + - py3-wheel + - py3-pip + - openssl + +pipeline: + - uses: git-checkout + with: + repository: https://github.com/kubeflow/kubeflow + tag: v${{package.version}} + expected-commit: cce5c88047815c45df8a52c8592e5890ae1b1949 + + - runs: | + # Build the backend common libs into a wheel + cd components/crud-web-apps/common/backend + python3 setup.py bdist_wheel + pip3 install . --prefix=/usr --root="${{targets.destdir}}" + + # Build the frontend common packages + cd ../frontend/kubeflow-common-lib + npm ci + npm run build + + # Build the frontend and copy the common package into it + cd ../../../volumes/frontend + npm ci + mv ../../common/frontend/kubeflow-common-lib/dist/kubeflow node_modules/ + + # This usually uses node 12, but it works with this. + export NODE_OPTIONS=--openssl-legacy-provider + npm run build -- --output-path=./dist/default --configuration=production + + # Build the volumes backend + cd ../backend + pip3 install -r requirements.txt --prefix=/usr --root="${{targets.destdir}}" + + # Now move it all into place + mkdir -p "${{targets.destdir}}/usr/share/kubeflow-volumes-web-app/" + + # Move the backend + mv ../backend/apps "${{targets.destdir}}/usr/share/kubeflow-volumes-web-app/" + mv ../backend/entrypoint.py "${{targets.destdir}}/usr/share/kubeflow-volumes-web-app/" + + # Move the frontend + mv ../frontend/dist/default "${{targets.destdir}}/usr/share/kubeflow-volumes-web-app/apps/default/static" + + - uses: strip + +update: + enabled: true + github: + identifier: kubeflow/kubeflow + use-tag: true + # There were some malformed early tags + tag-filter: v1 + strip-prefix: v diff --git a/packages.txt b/packages.txt index d3b11614a18..6028f0131f1 100644 --- a/packages.txt +++ b/packages.txt @@ -701,6 +701,7 @@ cni-plugins docker-credential-acr-env flux-image-reflector-controller kubeflow-jupyter-web-app +kubeflow-volumes-web-app kaniko flux-image-automation-controller openai