Skip to main content

Utilities for managing invenio monorepo

Project description

oarepo-cli

Work in progress.

Repository project initialization

Download the file from https://raw.githubusercontent.com/oarepo/oarepo-cli/v11.0/nrp-installer.sh, inspect it (always a good practice) and run bash nrp-installer.sh <project_dir>

Roadmap

NRP client is meant to simplify:

Site:

  • get script for automatic installation
  • checking invenio prerequisites
  • bootstraping new repository site in development mode
    • in 1 git contains all mode
    • in per-model, per-ui git submodule mode
  • including UI (webpack) compilation and collection of static assets
  • running development server
  • initialization when oarepo-initialize is used on existing sources
    • create virtualenvs
    • setup db if not set up
    • setup indices if not set up

Metadata model:

  • adding metadata model
  • testing metadata model
  • installing metadata model into the site
  • updating alembic during the installation step
    • handling empty migrations when model has not changed
  • initializing index during the installation step and reindexing data
  • importing (sample) data
  • proxied models (that is, model that is built on index alias)

Requests:

  • installing requests
  • adding request type & actions
    • using approval process libraries

Expanded fields:

  • installing support for expanded fields
  • adding expanded fields
    • using libraries of expanded fields

Files:

  • installing support for files

Custom fields:

  • installing support for custom fields

Relations:

  • installing support for relations

User interface for a metadata model:

  • adding UI module
  • generating initial UI layout from model
  • installing UI module to the site
  • scaffolding UI component (jinja and react)
  • UI on proxied models

Automated testing:

  • running unit tests for models
    • per-model tests
    • running tests for all models
  • unit tests for UI
    • per-ui tests
    • running tests for all models
  • running tests for site
    • overall tests (can run server, https on index page works)
    • per-ui tests (ui is accessible, returns meaningful pages)

Build and Deployment scenarios:

  • publishing packages to pypi/gitlab/...

    • in monorepo mode (single pypi package from all components)
    • in per-model, per-ui package mode
  • creating docker/k8s image for the whole site

Github/Gitlab integration:

  • support github actions
  • support gitlab CI/CD

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

oarepo-cli-11.0.33.tar.gz (37.5 kB view details)

Uploaded Source

Built Distribution

oarepo_cli-11.0.33-py3-none-any.whl (56.5 kB view details)

Uploaded Python 3

File details

Details for the file oarepo-cli-11.0.33.tar.gz.

File metadata

  • Download URL: oarepo-cli-11.0.33.tar.gz
  • Upload date:
  • Size: 37.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.11.3

File hashes

Hashes for oarepo-cli-11.0.33.tar.gz
Algorithm Hash digest
SHA256 f6301d15f77db20c3567d2468bae8c87a1f720b1be14aa783b3c50397e596c23
MD5 dacf4bc7bc99fedbc54d85c8a8910567
BLAKE2b-256 47c5e1e1030a67c6d2880e8e2a2db6589fe9cbb7bf2ac97004c56e690f6f9d2a

See more details on using hashes here.

File details

Details for the file oarepo_cli-11.0.33-py3-none-any.whl.

File metadata

  • Download URL: oarepo_cli-11.0.33-py3-none-any.whl
  • Upload date:
  • Size: 56.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.11.3

File hashes

Hashes for oarepo_cli-11.0.33-py3-none-any.whl
Algorithm Hash digest
SHA256 b823f00a2677bf106f2fcfa25d5a11c8e74106f2aa3cc5e746cc57b1eb1ae31d
MD5 5fcdbb3c7af15e60e308a80b90d6b449
BLAKE2b-256 d383e7d1cb07801e8e882b89637f99b46f596fd2216a9a2beb8dd1e18d0877bf

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page