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.1.5.tar.gz
(3.7 MB
view hashes)
Built Distribution
Close
Hashes for oarepo_cli-11.1.5-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 1070f1ea45fccf1a732d3668ac72a91fb0c1f66383e46ed82a6845692eb81e0b |
|
MD5 | 999dee8defa1b1eb289d10f9372695ef |
|
BLAKE2b-256 | 07639f90aec5cf7f1400990caa3c4a8b7329a7165377581beb4a565426e95f91 |