README.md 3.46 KB
Newer Older
Markus Scheidgen's avatar
Markus Scheidgen committed
1
2
3
[![pipeline status](https://gitlab.mpcdf.mpg.de/nomad-lab/nomad-FAIR/badges/master/pipeline.svg)](https://gitlab.mpcdf.mpg.de/nomad-lab/nomad-FAIR/commits/master)
[![coverage report](https://gitlab.mpcdf.mpg.de/nomad-lab/nomad-FAIR/badges/master/coverage.svg)](https://gitlab.mpcdf.mpg.de/nomad-lab/nomad-FAIR/commits/master)

4
5
This project tries and test approaches that might lead to an improved architecture for
nomad@FAIR.
6

7
8
## Getting started

Markus Scheidgen's avatar
Markus Scheidgen committed
9
Read the docs. The documentation is part of the source code. It covers aspects like
10
11
12
13
14
15
introduction, architecture, development setup/deployment, contributing, and API reference.

### Read the docs on the latest deployed version

You can access the running system and its documentation here:

16
[https://repository.nomad-coe.eu/uploads/api/docs](https://repository.nomad-coe.eu/uploads/api/docs/index.html)
17
18

### Generate the docs from the source
19

20
First, clone this repo and init its submodules:
21
```
22
23
git clone git@gitlab.mpcdf.mpg.de:nomad-lab/nomad-FAIR.git
cd nomad-FAIR
24
git submodules init --depth 1
25
26
```

27
Second, create and source your own virtual python environment:
28
```
29
pip install virtualenv
30
virtualenv -p `which python3` .pyenv
31
source .pyenv/bin/activate
32
33
```

34
35
Third, install the development dependencies, including the documentation system
[sphinx](http://www.sphinx-doc.org/en/master/index.html):
36
```
37
38
pip install --upgrade pip
pip install --upgrade setuptools
Markus Scheidgen's avatar
Markus Scheidgen committed
39
pip install -r requirements.txt
40
41
```

42
Forth, generate the documentation:
43
```
44
45
cd docs
make html
46
47
```

48
Conintue with reading the documentation for further setup and contribution guidelines:
49
```
50
cd .build/html
51
python -m http.server 8888
52
```
53
54
Open [http://localhost:8888/html/setup.html](http://localhost:8888/html/setup.html) in
your browser.
Markus Scheidgen's avatar
Markus Scheidgen committed
55
56
57

## Change log

58
### v0.5.0
59
60
The first production version of nomad@fairdi as the upload API and gui for NOMAD
- Production ready software and deployments (term agreements, better GUI docs)
61
62
63
- Raw file API with support to list directories. This replaces the `files` calculation
  metadata key. It was necessary due to arbitrary large lists of *auxfiles* in some
  calculations.
64
- Search interface that contains all features of the CoE Repository GUI.
65
66
67
- Refactored search API that allows to search for entries (paginated + scroll),
  metrics based on quantity aggregations (+ paginated entries), quantity aggregations
  with all values via `after` key (+ paginated entries).
68
69
70
- reprocessing of published results (e.g. after parser/normalizer improvements)
- mirror functionality
- refactored command line interface (CLI)
71
- potential GUI user tracking capabilities
72
- many minor bugfixes
73

74
75
76
77
### v0.4.7
- more migration scripts
- minor bugfixes

78
79
80
81
82
83
### v0.4.6
- admin commands to directly manipulate upload data
- additional migration scripts
- fixed system normalizer to understand indexed atom labels correctly
- many minor bugfixes

84
85
86
87
88
### v0.4.5
- improved uploads view with published uploads
- support for publishing to the existing nomad CoE repository
- many minor bugfixes

89
### v0.4.4
90
- improved GUI navigation
91
92
- support for multiple domains
- info API endpoint
Markus Scheidgen's avatar
Markus Scheidgen committed
93
- metainfo browser
Markus Scheidgen's avatar
Markus Scheidgen committed
94
- support for latest exciting version
Markus Scheidgen's avatar
Markus Scheidgen committed
95
- bugfixes in system normalization
Markus Scheidgen's avatar
Markus Scheidgen committed
96
- many minor bugfixes
97

98
99
100
101
102
103
104
### v0.4.3
- more flexible celery routing
- config via nomad.yml
- repo_db can be disabled
- publishing of calculations with failed processing
- cli for managing running processing tasks

Markus Scheidgen's avatar
Markus Scheidgen committed
105
106
107
### v0.4.2
- bugfixes regarding the migration
- better migration configurability and reproducibility
Markus Scheidgen's avatar
Markus Scheidgen committed
108
- scales to multi node kubernetes deployment