From 98bb61eadb3595255c19a545d5296490dfcaf20c Mon Sep 17 00:00:00 2001 From: Pavithra Eswaramoorthy Date: Tue, 4 Jun 2024 18:31:36 +0530 Subject: [PATCH 1/2] Add standalone installation docs (#724) Co-authored-by: gabalafou --- .../conda-store/how-tos/install-standalone.md | 60 ++++++++++++++++ docusaurus-docs/conda-store/introduction.md | 68 ++++++++++++------- 2 files changed, 102 insertions(+), 26 deletions(-) create mode 100644 docusaurus-docs/conda-store/how-tos/install-standalone.md diff --git a/docusaurus-docs/conda-store/how-tos/install-standalone.md b/docusaurus-docs/conda-store/how-tos/install-standalone.md new file mode 100644 index 000000000..440dab0ca --- /dev/null +++ b/docusaurus-docs/conda-store/how-tos/install-standalone.md @@ -0,0 +1,60 @@ +--- +sidebar_position: 1 +description: How to install conda-store locally in standalone mode +--- + +# Standalone (local) installation + +The standalone mode is an **experimental feature**, and the quickest way to start using conda-store. +It provisions a complete local setup with conda-store-server running in the background along with [conda-store UI][conda-store-ui] running on localhost. + +This installation is recommend for individual users. + +## 1. Install the library + +:::note +The standalone mode is available in versions 2023.10.1 and later. +::: + +Install conda-store-server with `conda` or `pip`: + +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + + + + + +```bash +conda install -c conda-forge conda-store-server +``` + + + + +```bash +pip install conda-store-server +``` + + + + +## 2. Start in standalone mode + +Run the following in the command line: + +```bash +conda-store-server --standalone +``` + +Access conda-store UI at [`localhost:8080`](https://localhost:8080/) 🎉 + +## Next steps + +Learn to use the [conda-store UI with these tutorials][conda-store-ui-tutorials]. + + + + +[conda-store-ui]: ../../conda-store-ui/introduction +[conda-store-ui-tutorials]: ../../conda-store-ui/tutorials diff --git a/docusaurus-docs/conda-store/introduction.md b/docusaurus-docs/conda-store/introduction.md index dfbe5d7f0..f8428b093 100644 --- a/docusaurus-docs/conda-store/introduction.md +++ b/docusaurus-docs/conda-store/introduction.md @@ -9,46 +9,62 @@ description: Introduction to conda-store (core) documentation The [`conda-store` repository on GitHub][conda-store-repo] consists of two separate, yet related, packages: - **`conda-store-server`**: web server and workers that together provide the `conda-store` "service" through a REST API -- **`conda-store`** (client): a client which interacts with the service to offer user-facing command line interface +- **`conda-store` (client)**: a client which interacts with the service to offer user-facing command line interface (CLI) -## Quickstart +## Get started ✨ -1. Install conda-store with `conda` or `pip`: +The fastest way to get started with conda-store is with a [**local standalone installation**][standalone-install] and the [**conda-store UI**][conda-store-ui-tutorials]. -import Tabs from '@theme/Tabs'; -import TabItem from '@theme/TabItem'; +Alternatively, you can use some features of conda-store through the [CLI commands][cli-ref] or as a [shebang][shebang]. - +## Key concepts 🔖 - +Understand some useful terms and concepts to use conda-store effectively: -```bash -conda install -c conda-forge conda-store conda-store-server -``` - +* [Essentials for users new to the conda packaging ecosystem][conda-concepts] +* [Concepts and vocabulary unique to conda-store][conda-store-concepts] +* [Descriptions for the artifacts created by conda-store][artifacts] - +## Other installation options 💻 -```bash -pip install conda-store conda-store-server -``` - +conda-store can also be installed using: - +* [Docker][install-docker] +* [Kubernetes][install-kubernetes] +* [Vagrant][install-vagrant] -2. Start a standalone local instance and use the conda-store UI +## Deeper dive 📚 -```bash -conda-store-server --standalone -``` +Make the most of conda-store by learning about: -You can then access conda-store at `localhost:8080` of the machine running it. +* [Performance impact of conda-store components][performance] +* [Configuration options for customization][configuration] +* Internal architecture: [overview][ref-arch], [auth][ref-auth], and [database][ref-database] -3. Use the CLI +## Community and contributing 🌱 -```bash -conda-store --help -``` +Be a part of the conda-store community! +Check out the [Community documentation][community] for details. + + + +[standalone-install]: ./how-tos/install-standalone +[conda-store-ui-tutorials]: ../conda-store-ui/tutorials +[cli-ref]: ./references/cli +[shebang]: ./how-tos/shebang +[explanations]: ./explanations/ +[conda-concepts]: ./explanations/conda-concepts +[conda-store-concepts]: ./explanations/conda-store-concepts +[artifacts]: ./explanations/artifacts +[install-docker]: ./how-tos/install-docker +[install-kubernetes]: ./how-tos/install-kubernetes +[install-vagrant]: ./how-tos/install-vagrant +[performance]: ./explanations/performance +[configuration]: ./references/configuration-options +[ref-arch]: ./references/architecture +[ref-auth]: ./references/database +[ref-database]: ./references/auth +[community]: ../community/introduction From 0f4db01e2f659ea791cbef043b017bc1e29fe79b Mon Sep 17 00:00:00 2001 From: Peyton Murray Date: Tue, 4 Jun 2024 06:02:39 -0700 Subject: [PATCH 2/2] DEV - Update runtime dependencies (#827) Co-authored-by: Tania Allard --- conda-store-server/environment.yaml | 31 ----------------------------- conda-store-server/pyproject.toml | 10 +++------- conda-store/environment.yaml | 16 ++------------- conda-store/pyproject.toml | 13 ++++++++---- 4 files changed, 14 insertions(+), 56 deletions(-) diff --git a/conda-store-server/environment.yaml b/conda-store-server/environment.yaml index ea06891d5..932504a14 100644 --- a/conda-store-server/environment.yaml +++ b/conda-store-server/environment.yaml @@ -6,34 +6,3 @@ dependencies: - python ==3.10 # conda environment builds - conda ==23.5.2 - - python-docker - - conda-docker >= 0.1.2 - - conda-pack - - conda-lock >=1.0.5 - - conda-package-handling - - conda-package-streaming - # web server - - celery - - flower - - redis-py - - sqlalchemy<=1.4.47 - - alembic - - platformdirs >=4.0,<5.0a0 - - psycopg2 - - pymysql - - requests - - pyyaml - - uvicorn - - fastapi - - pydantic < 2.0 - - traitlets - - yarl - - pyjwt - - filelock - - itsdangerous - - jinja2 - - python-multipart - # artifact storage - - minio - # installer - - constructor diff --git a/conda-store-server/pyproject.toml b/conda-store-server/pyproject.toml index 371049002..40f894359 100644 --- a/conda-store-server/pyproject.toml +++ b/conda-store-server/pyproject.toml @@ -40,6 +40,7 @@ dependencies = [ "celery", "fastapi", "filelock", + "flower", "itsdangerous", "jinja2", "pyjwt", @@ -50,12 +51,10 @@ dependencies = [ "requests", "pydantic<2", "python-multipart", - "sqlalchemy<=1.4.47", + "sqlalchemy<2", "traitlets", "uvicorn", "yarl", - # installer - "constructor", # artifact storage "minio", "platformdirs >=4.0,<5.0a0" @@ -75,15 +74,12 @@ dependencies = [ "build", "docker-compose", "docker-py<7", - "flower", - "playwright", "pre-commit", "pytest", "pytest-celery", - "pytest-mock", "pytest-playwright", "twine>=5.0.0", - "pkginfo>=1.10", + "pkginfo>=1.10", # Needed to support metadata 2.3 ] [tool.hatch.envs.lint] diff --git a/conda-store/environment.yaml b/conda-store/environment.yaml index 138b4d4ed..a98574444 100644 --- a/conda-store/environment.yaml +++ b/conda-store/environment.yaml @@ -2,19 +2,7 @@ name: conda-store channels: - conda-forge dependencies: - - pip - - jupyterhub<2.0.0 - - jupyterlab>=4.0.0 - nb_conda_kernels - # - nb_conda_store_kernels >=0.1.4 - - nodejs=16 + - nodejs=18 - yarn - # conda-store client dependencies - - yarl - - aiohttp>=3.8.1 - - rich - - click - - ruamel.yaml - - pip: - - https://github.com/yuvipanda/jupyter-launcher-shortcuts/archive/refs/heads/master.zip - - jupyterlab-conda-store + - constructor # Runtime dependency, but must be conda-installed diff --git a/conda-store/pyproject.toml b/conda-store/pyproject.toml index a090fe501..72d0759ae 100644 --- a/conda-store/pyproject.toml +++ b/conda-store/pyproject.toml @@ -31,11 +31,17 @@ classifiers = [ "Intended Audience :: Science/Research", "Intended Audience :: System Administrators", ] -dependencies = ["rich", +dependencies = [ + "rich", "click", "yarl", "aiohttp>=3.8.1", - "ruamel.yaml"] + "ruamel.yaml", + "jupyterhub<2.0.0", + "jupyterlab>=4.0.0", + "jupyter-launcher-shortcuts", + "jupyterlab-conda-store", +] dynamic = ["version"] [project.urls] @@ -54,8 +60,7 @@ dependencies = [ "pre-commit", "pytest", "twine>=5.0.0", - "pkginfo >= 1.10", - "pytest-mock", + "pkginfo >= 1.10", # Needed to support metadata 2.3 ] [tool.hatch.envs.lint]