Skip to content

Commit ac82e04

Browse files
authored
Merge pull request #30 from Monogramm/develop
🔖 Release 1.1.0
2 parents a3d2f30 + 29f4658 commit ac82e04

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

74 files changed

+2838
-467
lines changed

.codacy.yml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
exclude_paths:
2+
- '**.sql'

.coveragerc

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
[report]
2+
omit =
3+
*/python?.?/*
4+
*/site-packages/nose/*

.env

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
2+
########################################
3+
# ERPNext configuration
4+
########################################
5+
6+
ERPNEXT_HOME=/srv/erpnext/frappe
7+
8+
ERPNEXT_SITE=localhost
9+
10+
ERPNEXT_ADMIN_PWD=erpnext_admin_password
11+
12+
# Generated with openssl rand -base64 32
13+
ERPNEXT_ENCRYPTION_KEY=dcNdIKUHX/Vgl1sEc0eJIChyYx+2dQ/uASjWXs9hnic=
14+
15+
ERPNEXT_DB_ROOT_LOGIN=root
16+
ERPNEXT_DB_ROOT_PWD=erpnext_db_root_password
17+
18+
# DB name will be used as the DB user
19+
ERPNEXT_DB_NAME=erpnext
20+
ERPNEXT_DB_PWD=erpnext_password
21+
22+
# Local development configuration
23+
IMAGE_NAME=docker-erpnext:erpnext_ocr-dev
24+
FRAPPE_APP_TO_TEST=erpnext_ocr

.github/ISSUE_TEMPLATE/bug_report.md

Lines changed: 13 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,12 @@
1-
---
1+
* * *
2+
23
name: Bug report
34
about: Create a report to help us improve
45
title: ''
56
labels: bug
6-
assignees: madmath03
7+
assignees:
78

8-
---
9+
* * *
910

1011
**Describe the bug**
1112
A clear and concise description of what the bug is.
@@ -26,15 +27,17 @@ A clear and concise description of what you expected to happen.
2627
If applicable, add screenshots to help explain your problem.
2728

2829
**Desktop (please complete the following information):**
29-
- OS: [e.g. iOS]
30-
- Browser [e.g. chrome, safari]
31-
- Version [e.g. 22]
30+
31+
- OS: [e.g. iOS]
32+
- Browser [e.g. chrome, safari]
33+
- Version [e.g. 22]
3234

3335
**Smartphone (please complete the following information):**
34-
- Device: [e.g. iPhone6]
35-
- OS: [e.g. iOS8.1]
36-
- Browser [e.g. stock browser, safari]
37-
- Version [e.g. 22]
36+
37+
- Device: [e.g. iPhone6]
38+
- OS: [e.g. iOS8.1]
39+
- Browser [e.g. stock browser, safari]
40+
- Version [e.g. 22]
3841

3942
**Additional context**
4043
Add any other context about the problem here.

.github/ISSUE_TEMPLATE/feature_request.md

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,12 @@
1-
---
1+
* * *
2+
23
name: Feature request
34
about: Suggest an idea for this project
45
title: ''
56
labels: enhancement
6-
assignees: madmath03
7+
assignees:
78

8-
---
9+
* * *
910

1011
**Is your feature request related to a problem? Please describe.**
1112
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]

.github/PULL_REQUEST_TEMPLATE.md

Lines changed: 0 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,3 @@
1-
---
2-
name: Pull Request
3-
about: Create a Pull Request to help us improve
4-
title: 'type: Subject'
5-
labels:
6-
assignees: madmath03
7-
8-
---
9-
101
<!--
112
123
Some key notes before you open a PR:

.travis.yml

Lines changed: 42 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -7,25 +7,35 @@ language: shell
77

88
branches:
99
only:
10-
- develop
1110
- master
11+
- develop
1212

13-
before_script:
13+
before_install:
1414
- env | sort
15-
- home=$(pwd)
16-
- dir=".travis"
17-
- export IMAGE_NAME=docker-erpnext-ext:erpnext_ocr-travis
15+
- export TAG=travis
16+
- export VCS_REF=`git rev-parse --short HEAD`
17+
- export BUILD_DATE=`date -u +"%Y-%m-%dT%H:%M:%SZ"`
18+
- export home=$(pwd)
19+
- export travis_dir="${home}/.travis"
20+
- export IMAGE_NAME="docker-erpnext_ocr:${TAG}"
1821
- export BUILD_BRANCH=${TRAVIS_PULL_REQUEST_BRANCH:-${TRAVIS_BRANCH}}
1922
- export BUILD_URL=https://github.com/${TRAVIS_PULL_REQUEST_SLUG:-${TRAVIS_REPO_SLUG}}
2023

21-
script:
22-
- cd "$dir"
24+
install:
25+
- echo "Changing to travis test directory ($travis_dir)"
26+
- cd "$travis_dir"
2327
# Prepare base image for build version and variant
2428
- sed -i -e "s/%%VERSION%%/${VERSION}/g" Dockerfile.${VARIANT}
25-
- sed -i -e "s/%%IMAGE_NAME%%/${IMAGE_NAME}/g" Dockerfile_test
29+
- sed -i -e "s/%%IMAGE_NAME%%/${IMAGE_NAME}/g" Dockerfile.test
2630
# Test container build
2731
- travis_retry travis_wait 60 docker-compose -f docker-compose.${DATABASE}.yml build
32+
33+
before_script:
2834
- docker images
35+
36+
script:
37+
- echo "Changing to travis test directory ($travis_dir)"
38+
- cd "$travis_dir"
2939
# Test container run
3040
- travis_retry docker-compose -f docker-compose.${DATABASE}.yml up -d && sleep 60
3141
- docker-compose -f docker-compose.${DATABASE}.yml ps
@@ -43,7 +53,7 @@ script:
4353
- docker-compose -f docker-compose.${DATABASE}.yml ps "erpnext_app" | grep "Up"
4454
- docker-compose -f docker-compose.${DATABASE}.yml logs "erpnext_web"
4555
- docker-compose -f docker-compose.${DATABASE}.yml ps "erpnext_web" | grep "Up"
46-
- echo 'Wait until test finished (3 minutes)' && sleep 180
56+
- echo 'Wait until test finished (5 minutes)' && sleep 300
4757
- docker-compose -f docker-compose.${DATABASE}.yml logs "sut"
4858
- docker-compose -f docker-compose.${DATABASE}.yml ps "sut" | grep "Exit 0"
4959
# Test container restart
@@ -56,14 +66,32 @@ script:
5666
- docker-compose -f docker-compose.${DATABASE}.yml ps "erpnext_app" | grep "Up"
5767
- docker-compose -f docker-compose.${DATABASE}.yml logs "erpnext_web"
5868
- docker-compose -f docker-compose.${DATABASE}.yml ps "erpnext_web" | grep "Up"
59-
- echo 'Wait until test finished (3 minutes)' && sleep 180
69+
- echo 'Wait until test finished (5 minutes)' && sleep 300
6070
- docker-compose -f docker-compose.${DATABASE}.yml logs "sut"
6171
- docker-compose -f docker-compose.${DATABASE}.yml ps "sut" | grep "Exit 0"
6272

63-
#after_script:
64-
# - cd "$home"
65-
# - sudo pip install python-coveralls
66-
# - coveralls -b "$home" -d /srv/erpnext/frappe/sites/.coverage
73+
after_script:
74+
- echo "Changing to project directory ($home)"
75+
- cd "$home"
76+
- sudo pip install coverage==4.5.4
77+
- sudo pip install python-coveralls
78+
- curl https://deepsource.io/cli | sudo sh
79+
# Create same directory path as docker test execution
80+
- sudo mkdir -p '/home/frappe/frappe-bench/apps'
81+
- sudo ln -sf "$home" '/home/frappe/frappe-bench/apps/erpnext_ocr'
82+
# Copy and convert coverage to XML format
83+
- cp '/srv/erpnext/frappe/sites/.coverage' .coverage
84+
- coverage xml
85+
- coverage report -m
86+
# Publish coverage to Coveralls
87+
- coveralls -b "$home" -d "$home/.coverage"
88+
# Publish coverage to Codacy
89+
- test -z "$CODACY_PROJECT_TOKEN" || bash <(curl -Ls https://coverage.codacy.com/get.sh) report -l Python -r "./coverage.xml"
90+
# Publish coverage to Codecov
91+
- test -z "$CODECOV_TOKEN" || bash <(curl -s https://codecov.io/bash)
92+
# Publish coverage to DeepSource
93+
- export DEEPSOURCE_DSN=https://sampledsn@deepsource.io
94+
- ./bin/deepsource report --analyzer test-coverage --key python --value-file ./coverage.xml
6795

6896
notifications:
6997
email: false

.travis/.env

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,8 @@
33
# ERPNext configuration
44
########################################
55

6+
ERPNEXT_HOME=/srv/erpnext/frappe
7+
68
ERPNEXT_SITE=localhost
79

810
ERPNEXT_ADMIN_PWD=erpnext_admin_password
@@ -17,3 +19,7 @@ ERPNEXT_DB_ROOT_PWD=erpnext_db_root_password
1719
ERPNEXT_DB_NAME=erpnext
1820
ERPNEXT_DB_PWD=erpnext_password
1921

22+
# Tessdata links
23+
TESSDATA_BEST=https://github.com/tesseract-ocr/tessdata_best/blob/master/ara.traineddata?raw=true
24+
TESSDATA_FAST=https://github.com/tesseract-ocr/tessdata_fast/blob/master/ara.traineddata?raw=true
25+
TESSDATA_PATH=/usr/share/tesseract-ocr/tessdata

.travis/Dockerfile.alpine

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@ RUN set -ex; \
1010
ENV DOCKER_TAG=travis \
1111
DOCKER_VCS_REF=${TRAVIS_COMMIT} \
1212
DOCKER_BUILD_DATE=${TRAVIS_BUILD_NUMBER} \
13+
TESSDATA_PREFIX=/home/$FRAPPE_USER/tessdata \
1314
LANG=C.UTF-8 \
1415
LC_ALL=C
1516

@@ -29,6 +30,16 @@ RUN set -ex; \
2930
leptonica \
3031
pkgconfig \
3132
; \
33+
mkdir -p $TESSDATA_PREFIX; \
34+
sudo chown -R $FRAPPE_USER:$FRAPPE_USER $TESSDATA_PREFIX ; \
35+
wget -q https://raw.github.com/tesseract-ocr/tessdata/master/eng.traineddata -O $TESSDATA_PREFIX/eng.traineddata; \
36+
wget -q https://raw.github.com/tesseract-ocr/tessdata/master/equ.traineddata -O $TESSDATA_PREFIX/equ.traineddata; \
37+
wget -q https://raw.github.com/tesseract-ocr/tessdata/master/osd.traineddata -O $TESSDATA_PREFIX/osd.traineddata; \
38+
wget -q https://raw.github.com/tesseract-ocr/tessdata/master/fra.traineddata -O $TESSDATA_PREFIX/fra.traineddata; \
39+
wget -q https://raw.github.com/tesseract-ocr/tessdata/master/deu.traineddata -O $TESSDATA_PREFIX/deu.traineddata; \
40+
wget -q https://raw.github.com/tesseract-ocr/tessdata/master/spa.traineddata -O $TESSDATA_PREFIX/spa.traineddata; \
41+
wget -q https://raw.github.com/tesseract-ocr/tessdata/master/por.traineddata -O $TESSDATA_PREFIX/por.traineddata; \
42+
sudo chmod -R 755 $TESSDATA_PREFIX ; \
3243
sudo sed -i \
3344
-e 's/rights="none" pattern="PDF"/rights="read" pattern="PDF"/g' \
3445
/etc/ImageMagick*/policy.xml \

.travis/Dockerfile.debian

Lines changed: 13 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,9 @@ RUN set -ex; \
1818
# Build environment variables
1919
ENV DOCKER_TAG=travis \
2020
DOCKER_VCS_REF=${TRAVIS_COMMIT} \
21-
DOCKER_BUILD_DATE=${TRAVIS_BUILD_NUMBER}
21+
DOCKER_BUILD_DATE=${TRAVIS_BUILD_NUMBER} \
22+
TESSDATA_PREFIX=/home/$FRAPPE_USER/tessdata \
23+
LC_ALL=C
2224

2325
# Copy the whole repository to app folder for manual install
2426
#COPY --chown=frappe:frappe . "/home/$FRAPPE_USER"/frappe-bench/apps/erpnext_ocr
@@ -38,6 +40,16 @@ RUN set -ex; \
3840
pkg-config \
3941
; \
4042
sudo rm -rf /var/lib/apt/lists/*; \
43+
mkdir -p $TESSDATA_PREFIX; \
44+
sudo chown -R $FRAPPE_USER:$FRAPPE_USER $TESSDATA_PREFIX ; \
45+
wget -q https://raw.github.com/tesseract-ocr/tessdata/master/eng.traineddata -O $TESSDATA_PREFIX/eng.traineddata; \
46+
wget -q https://raw.github.com/tesseract-ocr/tessdata/master/equ.traineddata -O $TESSDATA_PREFIX/equ.traineddata; \
47+
wget -q https://raw.github.com/tesseract-ocr/tessdata/master/osd.traineddata -O $TESSDATA_PREFIX/osd.traineddata; \
48+
wget -q https://raw.github.com/tesseract-ocr/tessdata/master/fra.traineddata -O $TESSDATA_PREFIX/fra.traineddata; \
49+
wget -q https://raw.github.com/tesseract-ocr/tessdata/master/deu.traineddata -O $TESSDATA_PREFIX/deu.traineddata; \
50+
wget -q https://raw.github.com/tesseract-ocr/tessdata/master/spa.traineddata -O $TESSDATA_PREFIX/spa.traineddata; \
51+
wget -q https://raw.github.com/tesseract-ocr/tessdata/master/por.traineddata -O $TESSDATA_PREFIX/por.traineddata; \
52+
sudo chmod -R 755 $TESSDATA_PREFIX ; \
4153
sudo sed -i \
4254
-e 's/rights="none" pattern="PDF"/rights="read" pattern="PDF"/g' \
4355
/etc/ImageMagick*/policy.xml \

.travis/Dockerfile.debian-slim

Lines changed: 14 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,9 @@ RUN set -ex; \
1919
# Build environment variables
2020
ENV DOCKER_TAG=travis \
2121
DOCKER_VCS_REF=${TRAVIS_COMMIT} \
22-
DOCKER_BUILD_DATE=${TRAVIS_BUILD_NUMBER}
22+
DOCKER_BUILD_DATE=${TRAVIS_BUILD_NUMBER} \
23+
TESSDATA_PREFIX=/home/$FRAPPE_USER/tessdata \
24+
LC_ALL=C
2325

2426
# Copy the whole repository to app folder for manual install
2527
#COPY --chown=frappe:frappe . "/home/$FRAPPE_USER"/frappe-bench/apps/erpnext_ocr
@@ -32,12 +34,23 @@ RUN set -ex; \
3234
sudo apt-get install -y --no-install-recommends \
3335
ghostscript \
3436
imagemagick \
37+
libmagickwand-dev \
3538
tesseract-ocr \
3639
libtesseract-dev \
3740
libleptonica-dev \
3841
pkg-config \
3942
; \
4043
sudo rm -rf /var/lib/apt/lists/*; \
44+
mkdir -p $TESSDATA_PREFIX; \
45+
sudo chown -R $FRAPPE_USER:$FRAPPE_USER $TESSDATA_PREFIX ; \
46+
wget -q https://raw.github.com/tesseract-ocr/tessdata/master/eng.traineddata -O $TESSDATA_PREFIX/eng.traineddata; \
47+
wget -q https://raw.github.com/tesseract-ocr/tessdata/master/equ.traineddata -O $TESSDATA_PREFIX/equ.traineddata; \
48+
wget -q https://raw.github.com/tesseract-ocr/tessdata/master/osd.traineddata -O $TESSDATA_PREFIX/osd.traineddata; \
49+
wget -q https://raw.github.com/tesseract-ocr/tessdata/master/fra.traineddata -O $TESSDATA_PREFIX/fra.traineddata; \
50+
wget -q https://raw.github.com/tesseract-ocr/tessdata/master/deu.traineddata -O $TESSDATA_PREFIX/deu.traineddata; \
51+
wget -q https://raw.github.com/tesseract-ocr/tessdata/master/spa.traineddata -O $TESSDATA_PREFIX/spa.traineddata; \
52+
wget -q https://raw.github.com/tesseract-ocr/tessdata/master/por.traineddata -O $TESSDATA_PREFIX/por.traineddata; \
53+
sudo chmod -R 755 $TESSDATA_PREFIX ; \
4154
sudo sed -i \
4255
-e 's/rights="none" pattern="PDF"/rights="read" pattern="PDF"/g' \
4356
/etc/ImageMagick*/policy.xml \

.travis/Dockerfile_test renamed to .travis/Dockerfile.test

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
FROM %%IMAGE_NAME%%
22

3-
ADD docker_test.sh /docker_test.sh
3+
COPY docker_test.sh /docker_test.sh
44

55
RUN set -ex; \
66
sudo chmod 755 /docker_test.sh; \

.travis/docker-compose.mariadb.yml

Lines changed: 12 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ services:
55
sut:
66
build:
77
context: ./
8-
dockerfile: Dockerfile_test
8+
dockerfile: Dockerfile.test
99
command: sh /docker_test.sh
1010
# Only for travis-ci, do not name test container in dockerhub
1111
container_name: sut
@@ -51,8 +51,8 @@ services:
5151
context: ./
5252
dockerfile: Dockerfile.${VARIANT}
5353
args:
54-
- BUILD_BRANCH=${BUILD_BRANCH}
55-
- BUILD_URL=${BUILD_URL}
54+
- BUILD_BRANCH=${BUILD_BRANCH}
55+
- BUILD_URL=${BUILD_URL}
5656
image: ${IMAGE_NAME}
5757
container_name: erpnext_app
5858
command: app
@@ -73,7 +73,8 @@ services:
7373
- FRAPPE_DEFAULT_SITE=${ERPNEXT_SITE}
7474
- FRAPPE_LOGGING=1
7575
- DEVELOPER_MODE=0
76-
#- Amin user setup
76+
- ALLOW_TESTS=1
77+
# Admin user setup
7778
- ADMIN_PASSWORD=${ERPNEXT_ADMIN_PWD}
7879
- ENCRYPTION_KEY=${ERPNEXT_ENCRYPTION_KEY}
7980
# Database setup
@@ -90,8 +91,8 @@ services:
9091
- REDIS_QUEUE_HOST=erpnext_redis_queue
9192
- REDIS_SOCKETIO_HOST=erpnext_redis_socketio
9293
volumes:
93-
- /srv/erpnext/frappe/sites:/home/frappe/frappe-bench/sites
94-
- /srv/erpnext/frappe/logs:/home/frappe/frappe-bench/logs
94+
- ${ERPNEXT_HOME}/sites:/home/frappe/frappe-bench/sites
95+
- ${ERPNEXT_HOME}/logs:/home/frappe/frappe-bench/logs
9596
- /etc/localtime:/etc/localtime:ro
9697
- /etc/timezone:/etc/timezone:ro
9798

@@ -144,7 +145,7 @@ services:
144145
# Docker setup
145146
- DOCKER_APPS_TIMEOUT=900
146147
volumes:
147-
- /srv/erpnext/frappe/sites:/home/frappe/frappe-bench/sites
148+
- ${ERPNEXT_HOME}/sites:/home/frappe/frappe-bench/sites
148149
- /etc/localtime:/etc/localtime:ro
149150
- /etc/timezone:/etc/timezone:ro
150151

@@ -160,7 +161,7 @@ services:
160161
# Docker setup
161162
- DOCKER_APPS_TIMEOUT=900
162163
volumes:
163-
- /srv/erpnext/frappe/sites:/home/frappe/frappe-bench/sites
164+
- ${ERPNEXT_HOME}/sites:/home/frappe/frappe-bench/sites
164165
- /etc/localtime:/etc/localtime:ro
165166
- /etc/timezone:/etc/timezone:ro
166167

@@ -176,7 +177,7 @@ services:
176177
# Docker setup
177178
- DOCKER_APPS_TIMEOUT=900
178179
volumes:
179-
- /srv/erpnext/frappe/sites:/home/frappe/frappe-bench/sites
180+
- ${ERPNEXT_HOME}/sites:/home/frappe/frappe-bench/sites
180181
- /etc/localtime:/etc/localtime:ro
181182
- /etc/timezone:/etc/timezone:ro
182183

@@ -192,7 +193,7 @@ services:
192193
# Docker setup
193194
- DOCKER_APPS_TIMEOUT=900
194195
volumes:
195-
- /srv/erpnext/frappe/sites:/home/frappe/frappe-bench/sites
196+
- ${ERPNEXT_HOME}/sites:/home/frappe/frappe-bench/sites
196197
- /etc/localtime:/etc/localtime:ro
197198
- /etc/timezone:/etc/timezone:ro
198199

@@ -210,7 +211,7 @@ services:
210211
# Docker setup
211212
- DOCKER_APPS_TIMEOUT=900
212213
volumes:
213-
- /srv/erpnext/frappe/sites:/home/frappe/frappe-bench/sites
214+
- ${ERPNEXT_HOME}/sites:/home/frappe/frappe-bench/sites
214215
- /etc/localtime:/etc/localtime:ro
215216
- /etc/timezone:/etc/timezone:ro
216217

0 commit comments

Comments
 (0)