Skip to content

Commit

Permalink
Merge machine-learning-api
Browse files Browse the repository at this point in the history
  • Loading branch information
aversey committed Jul 2, 2024
1 parent 8135891 commit fab4b95
Show file tree
Hide file tree
Showing 167 changed files with 25,633 additions and 0 deletions.
35 changes: 35 additions & 0 deletions hsml/.github/workflows/mkdocs-main.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
name: mkdocs-main

on: pull_request

jobs:
publish-main:
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0

- name: set dev version
working-directory: ./java
run: echo "DEV_VERSION=$(mvn org.apache.maven.plugins:maven-help-plugin:2.1.1:evaluate -Dexpression=project.version | grep -Ev 'Download|INFO|WARNING')" >> $GITHUB_ENV

- uses: actions/setup-python@v5
with:
python-version: "3.10"

- name: install deps
working-directory: ./python
run: cp ../README.md . && pip3 install -r ../requirements-docs.txt && pip3 install -e .[dev]

- name: generate autodoc
run: python3 auto_doc.py

- name: setup git
run: |
git config --global user.name Mike
git config --global user.email [email protected]
- name: mike deploy docs
run: mike deploy ${{ env.DEV_VERSION }} dev -u
42 changes: 42 additions & 0 deletions hsml/.github/workflows/mkdocs-release.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
name: mkdocs-release

on:
push:
branches: [branch-*\.*]

jobs:
publish-release:
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0

- name: set major/minor/bugfix release version
working-directory: ./java
run: echo "RELEASE_VERSION=$(mvn org.apache.maven.plugins:maven-help-plugin:2.1.1:evaluate -Dexpression=project.version | grep -Ev 'Download|INFO|WARNING')" >> $GITHUB_ENV

- name: set major/minor release version
run: echo "MAJOR_VERSION=$(echo $RELEASE_VERSION | sed 's/^\([0-9]*\.[0-9]*\).*$/\1/')" >> $GITHUB_ENV

- uses: actions/setup-python@v5
with:
python-version: "3.10"

- name: install deps
working-directory: ./python
run: cp ../README.md . && pip3 install -r ../requirements-docs.txt && pip3 install -e .[dev]

- name: generate autodoc
run: python3 auto_doc.py

- name: setup git
run: |
git config --global user.name Mike
git config --global user.email [email protected]
- name: mike deploy docs
run: |
mike deploy ${{ env.RELEASE_VERSION }} ${{ env.MAJOR_VERSION }} -u --push
mike alias ${{ env.RELEASE_VERSION }} latest -u --push
163 changes: 163 additions & 0 deletions hsml/.github/workflows/python-lint.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,163 @@
name: python

on: pull_request

jobs:
lint_stylecheck:
name: Lint and Stylecheck
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v4

- uses: actions/setup-python@v5
with:
python-version: "3.11"

- name: Get all changed files
id: get-changed-files
uses: tj-actions/changed-files@v44
with:
files_yaml: |
src:
- 'python/**/*.py'
- '!python/tests/**/*.py'
test:
- 'python/tests/**/*.py'
- name: install deps
run: pip install ruff==0.4.2

- name: ruff on python files
if: steps.get-changed-files.outputs.src_any_changed == 'true'
env:
SRC_ALL_CHANGED_FILES: ${{ steps.get-changed-files.outputs.src_all_changed_files }}
run: ruff check --output-format=github $SRC_ALL_CHANGED_FILES

- name: ruff on test files
if: steps.get-changed-files.outputs.test_any_changed == 'true'
env:
TEST_ALL_CHANGED_FILES: ${{ steps.get-changed-files.outputs.test_all_changed_files }}
run: ruff check --output-format=github $TEST_ALL_CHANGED_FILES

- name: ruff format --check $ALL_CHANGED_FILES
env:
ALL_CHANGED_FILES: ${{ steps.get-changed-files.outputs.all_changed_files }}
run: ruff format $ALL_CHANGED_FILES

unit_tests_ubuntu_utc:
name: Unit Testing (Ubuntu)
needs: lint_stylecheck
runs-on: ubuntu-latest
strategy:
matrix:
python-version: ["3.8", "3.9", "3.10", "3.11", "3.12"]

steps:
- name: Set Timezone
run: sudo timedatectl set-timezone UTC

- uses: actions/checkout@v4
- name: Copy README
run: cp README.md python/

- uses: actions/setup-python@v5
name: Setup Python
with:
python-version: ${{ matrix.python-version }}
cache: "pip"
cache-dependency-path: "python/setup.py"
- run: pip install -e python[dev]

- name: Display Python version
run: python --version

- name: Run Pytest suite
run: pytest python/tests

unit_tests_ubuntu_local:
name: Unit Testing (Ubuntu) (Local TZ)
needs: lint_stylecheck
runs-on: ubuntu-latest

steps:
- name: Set Timezone
run: sudo timedatectl set-timezone Europe/Amsterdam

- uses: actions/checkout@v4
- name: Copy README
run: cp README.md python/

- uses: actions/setup-python@v5
name: Setup Python
with:
python-version: "3.12"
cache: "pip"
cache-dependency-path: "python/setup.py"
- run: pip install -e python[dev]

- name: Display Python version
run: python --version

- name: Run Pytest suite
run: pytest python/tests

unit_tests_windows_utc:
name: Unit Testing (Windows)
needs: lint_stylecheck
runs-on: windows-latest
strategy:
matrix:
python-version: ["3.8", "3.9", "3.10", "3.11", "3.12"]

steps:
- name: Set Timezone
run: tzutil /s "UTC"

- uses: actions/checkout@v4
- name: Copy README
run: cp README.md python/

- uses: actions/setup-python@v5
name: Setup Python
with:
python-version: ${{ matrix.python-version }}
cache: "pip"
cache-dependency-path: "python/setup.py"
- run: pip install -e python[dev]

- name: Display Python version
run: python --version

- name: Run Pytest suite
run: pytest python/tests

unit_tests_windows_local:
name: Unit Testing (Windows) (Local TZ)
needs: lint_stylecheck
runs-on: windows-latest

steps:
- name: Set Timezone
run: tzutil /s "W. Europe Standard Time"

- uses: actions/checkout@v4
- name: Copy README
run: cp README.md python/

- uses: actions/setup-python@v5
name: Setup Python
with:
python-version: "3.12"
cache: "pip"
cache-dependency-path: "python/setup.py"
- run: pip install -e python[dev]

- name: Display Python version
run: python --version

- name: Display pip freeze
run: pip freeze

- name: Run Pytest suite
run: pytest python/tests
130 changes: 130 additions & 0 deletions hsml/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,130 @@
# 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/
share/python-wheels/
*.egg-info/
.installed.cfg
*.egg
MANIFEST
python/README.md
python/LICENSE

# 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/
.ruff_cache/

# Translations
*.mo
*.pot

# Django stuff:
*.log
local_settings.py
db.sqlite3

# Flask stuff:
instance/
.webassets-cache

# 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/

# Java
.idea
.vscode
*.iml
target/

# Mac
.DS_Store

# mkdocs intemediate files
docs/generated
Loading

0 comments on commit fab4b95

Please sign in to comment.