-
Notifications
You must be signed in to change notification settings - Fork 1
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
11 changed files
with
616 additions
and
1 deletion.
There are no files selected for viewing
Empty file.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,6 @@ | ||
repos: | ||
- repo: https://github.com/ambv/black | ||
rev: stable | ||
hooks: | ||
- id: black | ||
language_version: python3.7 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,141 @@ | ||
ML Models Management System | ||
########################### | ||
|
||
.. contents:: \ | ||
|
||
.. section-numbering:: | ||
|
||
|
||
Features | ||
======== | ||
|
||
TODO | ||
|
||
Installing | ||
========== | ||
|
||
You can get the most current package from `PyPI <https://test.pypi.org/>`_ | ||
|
||
.. code-block:: bash | ||
$ pip install mlmm-TODO | ||
Using it in your training environment is fairly straightforward: | ||
|
||
.. code-block:: python | ||
import mlmm-TODO | ||
mlmm = MLMM_TODO(token="") | ||
with mlmm(example=example) as models_management: | ||
# something | ||
models_management.upload( | ||
project=project, workspace=workspace, version=2 | ||
) | ||
Deploying | ||
========= | ||
|
||
Using docker-compose | ||
-------------------- | ||
|
||
This repository provides a pre-configured ``docker-compose.yml`` file that contains sensible default options. | ||
|
||
Before starting the containers, you should create a local ``.env`` file using the included ``.env.sample``. | ||
|
||
To start up all services, run: | ||
|
||
.. code-block:: bash | ||
$ docker-compose up | ||
To stop your services, you can press Ctrl+C/Ctrl+D. If you started the services in the background using ``docker-compose up -d``, the correct way to do this would be: | ||
|
||
.. code-block:: bash | ||
$ docker-compose stop | ||
You can learn more about Docker Compose by `clicking here <https://docs.docker.com/compose/>`_. | ||
|
||
Fetching individual images | ||
-------------------------- | ||
|
||
Both frontend and backend images are automatically published to `Docker Hub <https://hub.docker.com>`_ as soon as new stable release is made available. | ||
|
||
Links | ||
|
||
- `Frontend image on Docker Hub <https://hub.docker.com>`_ | ||
- `Backend image on Docker Hub <https://hub.docker.com>`_ | ||
- ...other services | ||
|
||
For reference, you can look at the `sample Ansible playbook <#>`_ that deploys all containers to a specified host using the locally configured ``.env`` file. | ||
|
||
Contributing | ||
============ | ||
|
||
Getting started | ||
--------------- | ||
|
||
1. Clone the repository from the ``develop`` branch | ||
|
||
.. code-block:: bash | ||
$ git clone -b develop git@github.com:nokia-wroclaw/innovativeproject-ml-models-management.git | ||
2. Install `pre-commit <https://pre-commit.com/#install>`_ | ||
|
||
3. Inside the project's root directory install all required githooks: | ||
|
||
.. code-block:: bash | ||
$ pre-commit install | ||
4. To start all required services for local development, run: | ||
|
||
.. code-block:: bash | ||
$ docker-compose up | ||
5. You're all set up! | ||
|
||
Fixing existing issues | ||
---------------------- | ||
|
||
1. Pick one of the `open issues <https://github.com/nokia-wroclaw/innovativeproject-ml-models-management/issues>`_ or `create a new one <https://github.com/nokia-wroclaw/innovativeproject-ml-models-management/issues/new>`_ | ||
|
||
2. Create a new branch named ``issue-[number]-[short description]`` derived from the ``develop`` branch, for example | ||
|
||
.. code-block:: bash | ||
$ git checkout -b issue-42-project-removal-permissions develop | ||
3. Make sure your implementation fixes the actual problem and is well tested. | ||
|
||
Implementing new features | ||
------------------------- | ||
|
||
When implementing new features, you should start by creating a new branch named ``feature-[short description]`` derived from the ``develop`` branch, for example | ||
|
||
.. code-block:: bash | ||
$ git checkout -b feature-new-user-profile develop | ||
Commiting the changes | ||
--------------------- | ||
|
||
To run all tests and check whether all required pre-commit githooks are satisfied, run | ||
|
||
.. code-block:: bash | ||
$ pre-commit run --all-files | ||
Your commit message should briefly summarize the changes (if possible) in plain English. To learn how to write a proper commit message, check out `this article <https://juffalow.com/other/write-good-git-commit-message>`_. | ||
|
||
When ready, create a new pull request compared with the ``develop`` branch set as a base branch. | ||
|
||
Documentation | ||
============= | ||
|
||
For the lastest stable release, the documentation can be seen at **mlmm-TODO**. |
Empty file.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,191 @@ | ||
|
||
# Created by https://www.gitignore.io/api/venv,flask,python | ||
# Edit at https://www.gitignore.io/?templates=venv,flask,python | ||
|
||
### Flask ### | ||
instance/* | ||
!instance/.gitignore | ||
.webassets-cache | ||
|
||
### Flask.Python Stack ### | ||
# Byte-compiled / optimized / DLL files | ||
__pycache__/ | ||
*.py[cod] | ||
*$py.class | ||
|
||
# C extensions | ||
*.so | ||
|
||
# Distribution / packaging | ||
.Python | ||
build/ | ||
develop-eggs/ | ||
dist/ | ||
downloads/ | ||
eggs/ | ||
.eggs/ | ||
lib/ | ||
lib64/ | ||
parts/ | ||
sdist/ | ||
var/ | ||
wheels/ | ||
pip-wheel-metadata/ | ||
share/python-wheels/ | ||
*.egg-info/ | ||
.installed.cfg | ||
*.egg | ||
MANIFEST | ||
|
||
# PyInstaller | ||
# Usually these files are written by a python script from a template | ||
# before PyInstaller builds the exe, so as to inject date/other infos into it. | ||
*.manifest | ||
*.spec | ||
|
||
# Installer logs | ||
pip-log.txt | ||
pip-delete-this-directory.txt | ||
|
||
# Unit test / coverage reports | ||
htmlcov/ | ||
.tox/ | ||
.nox/ | ||
.coverage | ||
.coverage.* | ||
.cache | ||
nosetests.xml | ||
coverage.xml | ||
*.cover | ||
.hypothesis/ | ||
.pytest_cache/ | ||
|
||
# Translations | ||
*.mo | ||
*.pot | ||
|
||
# Django stuff: | ||
*.log | ||
local_settings.py | ||
db.sqlite3 | ||
|
||
# Flask stuff: | ||
instance/ | ||
|
||
# Scrapy stuff: | ||
.scrapy | ||
|
||
# Sphinx documentation | ||
docs/_build/ | ||
|
||
# PyBuilder | ||
target/ | ||
|
||
# Jupyter Notebook | ||
.ipynb_checkpoints | ||
|
||
# IPython | ||
profile_default/ | ||
ipython_config.py | ||
|
||
# pyenv | ||
.python-version | ||
|
||
# celery beat schedule file | ||
celerybeat-schedule | ||
|
||
# SageMath parsed files | ||
*.sage.py | ||
|
||
# Environments | ||
.env | ||
.venv | ||
env/ | ||
venv/ | ||
ENV/ | ||
env.bak/ | ||
venv.bak/ | ||
|
||
# Spyder project settings | ||
.spyderproject | ||
.spyproject | ||
|
||
# Rope project settings | ||
.ropeproject | ||
|
||
# mkdocs documentation | ||
/site | ||
|
||
# mypy | ||
.mypy_cache/ | ||
.dmypy.json | ||
dmypy.json | ||
|
||
# Pyre type checker | ||
.pyre/ | ||
|
||
### Python ### | ||
# Byte-compiled / optimized / DLL files | ||
|
||
# C extensions | ||
|
||
# Distribution / packaging | ||
|
||
# PyInstaller | ||
# Usually these files are written by a python script from a template | ||
# before PyInstaller builds the exe, so as to inject date/other infos into it. | ||
|
||
# Installer logs | ||
|
||
# Unit test / coverage reports | ||
|
||
# Translations | ||
|
||
# Django stuff: | ||
|
||
# Flask stuff: | ||
|
||
# Scrapy stuff: | ||
|
||
# Sphinx documentation | ||
|
||
# PyBuilder | ||
|
||
# Jupyter Notebook | ||
|
||
# IPython | ||
|
||
# pyenv | ||
|
||
# celery beat schedule file | ||
|
||
# SageMath parsed files | ||
|
||
# Environments | ||
|
||
# Spyder project settings | ||
|
||
# Rope project settings | ||
|
||
# mkdocs documentation | ||
|
||
# mypy | ||
|
||
# Pyre type checker | ||
|
||
### Python Patch ### | ||
.venv/ | ||
|
||
### venv ### | ||
# Virtualenv | ||
# http://iamzed.com/2009/05/07/a-primer-on-virtualenv/ | ||
[Bb]in | ||
[Ii]nclude | ||
[Ll]ib | ||
[Ll]ib64 | ||
[Ll]ocal | ||
[Ss]cripts | ||
pyvenv.cfg | ||
pip-selfcheck.json | ||
|
||
# End of https://www.gitignore.io/api/venv,flask,python |
Empty file.
Oops, something went wrong.