Skip to content

Commit

Permalink
Merge branch 'develop'
Browse files Browse the repository at this point in the history
  • Loading branch information
mkochanowski committed Mar 5, 2019
2 parents ae6eaee + 89be4c6 commit dfe3b06
Show file tree
Hide file tree
Showing 11 changed files with 616 additions and 1 deletion.
Empty file added .env.sample
Empty file.
6 changes: 6 additions & 0 deletions .pre-commit-config.yml
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
1 change: 0 additions & 1 deletion README.md

This file was deleted.

141 changes: 141 additions & 0 deletions README.rst
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 added azure-pipelines.yml
Empty file.
191 changes: 191 additions & 0 deletions backend/.gitignore
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 added backend/Dockerfile
Empty file.
Loading

0 comments on commit dfe3b06

Please sign in to comment.