Skip to content

Commit df30a63

Browse files
authored
Merge pull request #740 from MetaCell/release/2.3.0
Release/2.3.0
2 parents c460baa + 237d25a commit df30a63

File tree

103 files changed

+9211
-9173
lines changed

Some content is hidden

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

103 files changed

+9211
-9173
lines changed

.github/pull_request_template.md

Lines changed: 15 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,24 +1,29 @@
1-
Closes #
1+
Closes [CH-X](https://metacell.atlassian.net/browse/CH-X)
22

3-
Implemented solution: ...
3+
# Implemented solution
44

5-
How to test this PR: ...
5+
...
66

7-
### Sanity checks:
7+
# How to test this PR
8+
9+
...
10+
11+
# Sanity checks:
812
- [ ] The pull request is explicitly linked to the relevant issue(s)
913
- [ ] The issue is well described: clearly states the problem and the general proposed solution(s)
10-
- [ ] From the issue and the current PR it is explicitly stated how to test the current change
14+
- [ ] In this PR it is explicitly stated how to test the current change
1115
- [ ] The labels in the issue set the scope and the type of issue (bug, feature, etc.)
16+
- [ ] The relevant components are indicated in the issue (if any)
1217
- [ ] All the automated test checks are passing
13-
- [ ] All the linked issues are included in one milestone
14-
- [ ] All the linked issues are in the Review/QA column of the [board](https://app.zenhub.com/workspaces/cloud-harness-5fdb203b7e195b0015a273d7/board)
18+
- [ ] All the linked issues are included in one Sprint
19+
- [ ] All the linked issues are in the Review state
1520
- [ ] All the linked issues are assigned
1621

17-
### Breaking changes (select one):
22+
# Breaking changes (select one):
1823
- [ ] The present changes do not change the preexisting api in any way
19-
- [ ] This PR and the issue are tagged as a `breaking-change`
24+
- [ ] This PR and the issue are tagged as a `breaking-change` and the migration procedure is well described [above](#implemented-solution)
2025

21-
### Possible deployment updates issues (select one):
26+
# Possible deployment updates issues (select one):
2227
- [ ] There is no reason why deployments based on CloudHarness may break after the current update
2328
- [ ] This PR and the issue are tagged as `alert:deployment`
2429

Lines changed: 73 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,73 @@
1+
.travis.yaml
2+
.openapi-generator-ignore
3+
README.md
4+
tox.ini
5+
git_push.sh
6+
test-requirements.txt
7+
8+
# Byte-compiled / optimized / DLL files
9+
__pycache__/
10+
*.py[cod]
11+
*$py.class
12+
13+
# C extensions
14+
*.so
15+
16+
# Distribution / packaging
17+
.Python
18+
env/
19+
build/
20+
develop-eggs/
21+
dist/
22+
downloads/
23+
eggs/
24+
.eggs/
25+
lib/
26+
lib64/
27+
parts/
28+
sdist/
29+
var/
30+
*.egg-info/
31+
.installed.cfg
32+
*.egg
33+
34+
# PyInstaller
35+
# Usually these files are written by a python script from a template
36+
# before PyInstaller builds the exe, so as to inject date/other infos into it.
37+
*.manifest
38+
*.spec
39+
40+
# Installer logs
41+
pip-log.txt
42+
pip-delete-this-directory.txt
43+
44+
# Unit test / coverage reports
45+
htmlcov/
46+
.tox/
47+
.coverage
48+
.coverage.*
49+
.cache
50+
nosetests.xml
51+
coverage.xml
52+
*,cover
53+
.hypothesis/
54+
venv/
55+
.python-version
56+
57+
# Translations
58+
*.mo
59+
*.pot
60+
61+
# Django stuff:
62+
*.log
63+
64+
# Sphinx documentation
65+
docs/_build/
66+
67+
# PyBuilder
68+
target/
69+
70+
#Ipython Notebook
71+
.ipynb_checkpoints
72+
73+
.git
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,3 @@
11
node_modules
22
dist
3+
.git

application-templates/flask-server/backend/.dockerignore

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -69,3 +69,5 @@ target/
6969

7070
#Ipython Notebook
7171
.ipynb_checkpoints
72+
73+
.git
Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
connexion[swagger-ui]==2.14.2
2+
swagger-ui-bundle >= 0.0.2
3+
python_dateutil >= 2.6.0
4+
setuptools >= 21.0.0
5+
Flask<3.0.0
Lines changed: 41 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,41 @@
1+
# coding: utf-8
2+
3+
import sys
4+
from setuptools import setup, find_packages
5+
6+
NAME = "__APP_NAME__"
7+
VERSION = "1.0.0"
8+
9+
# To install the library, run the following
10+
#
11+
# python setup.py install
12+
#
13+
# prerequisite: setuptools
14+
# http://pypi.python.org/pypi/setuptools
15+
16+
REQUIRES = [
17+
"connexion>=2.0.2",
18+
"swagger-ui-bundle>=0.0.2",
19+
"python_dateutil>=2.6.0",
20+
"pyjwt>=2.6.0",
21+
"cloudharness"
22+
]
23+
24+
setup(
25+
name=NAME,
26+
version=VERSION,
27+
description="__APP_NAME__",
28+
author_email="cloudharness@metacell.us",
29+
url="",
30+
keywords=["OpenAPI", "__APP_NAME__"],
31+
install_requires=REQUIRES,
32+
packages=find_packages(),
33+
package_data={'': ['openapi/openapi.yaml']},
34+
include_package_data=True,
35+
entry_points={
36+
'console_scripts': ['__APP_NAME__=__APP_NAME__.__main__:main']},
37+
long_description="""\
38+
__APP_NAME__
39+
"""
40+
)
41+
Lines changed: 73 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,73 @@
1-
node_modules
2-
dist
1+
.travis.yaml
2+
.openapi-generator-ignore
3+
README.md
4+
tox.ini
5+
git_push.sh
6+
test-requirements.txt
7+
8+
# Byte-compiled / optimized / DLL files
9+
__pycache__/
10+
*.py[cod]
11+
*$py.class
12+
13+
# C extensions
14+
*.so
15+
16+
# Distribution / packaging
17+
.Python
18+
env/
19+
build/
20+
develop-eggs/
21+
dist/
22+
downloads/
23+
eggs/
24+
.eggs/
25+
lib/
26+
lib64/
27+
parts/
28+
sdist/
29+
var/
30+
*.egg-info/
31+
.installed.cfg
32+
*.egg
33+
34+
# PyInstaller
35+
# Usually these files are written by a python script from a template
36+
# before PyInstaller builds the exe, so as to inject date/other infos into it.
37+
*.manifest
38+
*.spec
39+
40+
# Installer logs
41+
pip-log.txt
42+
pip-delete-this-directory.txt
43+
44+
# Unit test / coverage reports
45+
htmlcov/
46+
.tox/
47+
.coverage
48+
.coverage.*
49+
.cache
50+
nosetests.xml
51+
coverage.xml
52+
*,cover
53+
.hypothesis/
54+
venv/
55+
.python-version
56+
57+
# Translations
58+
*.mo
59+
*.pot
60+
61+
# Django stuff:
62+
*.log
63+
64+
# Sphinx documentation
65+
docs/_build/
66+
67+
# PyBuilder
68+
target/
69+
70+
#Ipython Notebook
71+
.ipynb_checkpoints
72+
73+
.git

application-templates/webapp/Dockerfile

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -7,28 +7,28 @@ ENV APP_DIR=/app
77

88
WORKDIR ${APP_DIR}
99
COPY frontend/package.json ${APP_DIR}
10-
COPY frontend/package-lock.json ${APP_DIR}
11-
RUN npm ci
10+
COPY frontend/yarn.lock ${APP_DIR}
11+
RUN yarn install --frozen-lockfile --timeout 60000
1212

1313
COPY frontend ${APP_DIR}
14-
RUN npm run build
14+
RUN yarn build
1515

1616
#####
17-
1817
FROM $CLOUDHARNESS_FLASK
19-
20-
ENV MODULE_NAME=__APP_NAME__
18+
ENV MODULE_NAME=samples
2119

2220
ENV WORKERS=2
2321
ENV PORT=8080
2422

2523
COPY backend/requirements.txt /usr/src/app/
2624

27-
RUN pip3 install --no-cache-dir -r requirements.txt
25+
RUN --mount=type=cache,target=/root/.cache python -m pip install --upgrade pip &&\
26+
pip3 install -r requirements.txt --prefer-binary
2827

2928
COPY backend/ /usr/src/app
30-
RUN pip3 install -e .
3129

3230
COPY --from=frontend app/dist/ /usr/src/app/www
3331

34-
ENTRYPOINT gunicorn --workers=$WORKERS --bind=0.0.0.0:$PORT $MODULE_NAME.__main__:app
32+
RUN pip3 install -e .
33+
34+
CMD gunicorn --workers=$WORKERS --bind=0.0.0.0:$PORT $MODULE_NAME.__main__:app --timeout 180

application-templates/webapp/frontend/package.json

Lines changed: 13 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -11,10 +11,10 @@
1111
"prestart": "eslint . --color --fix",
1212
"start": "webpack serve --progress --env DOMAIN=http://localhost:5000 --config webpack.config.dev.js",
1313
"start:dev": "webpack serve --progress --env.DOMAIN=https://__APP_NAME__.cloudharness.metacell.us --config webpack.config.dev.js",
14-
"start:minikube": "webpack serve --progress --env DOMAIN=http://__APP_NAME__.cloudharness.local --config webpack.config.dev.js"
14+
"start:local": "webpack serve --progress --env DOMAIN=http://__APP_NAME__.ch.local --config webpack.config.dev.js"
1515
},
1616
"author": "",
17-
"license": "ISC",
17+
"license": "MIT",
1818
"dependencies": {
1919
"axios": "^0.21.1",
2020
"react": "^16.12.0",
@@ -28,31 +28,33 @@
2828
"@babel/plugin-proposal-class-properties": "^7.8.3",
2929
"@babel/preset-env": "^7.8.3",
3030
"@babel/preset-react": "^7.8.3",
31-
"awesome-typescript-loader": "^5.2.1",
3231
"babel-eslint": "^10.1.0",
3332
"babel-loader": "^8.0.6",
3433
"babel-plugin-module-resolver": "^4.0.0",
3534
"babel-preset-minify": "^0.5.1",
3635
"clean-webpack-plugin": "^3.0.0",
3736
"compression-webpack-plugin": "^7.1.2",
3837
"copy-webpack-plugin": "^6.2.1",
39-
"css-loader": "^3.4.2",
38+
"css-loader": "^5.2.4",
39+
"dotenv": "^16.0.2",
4040
"eslint": "5.16.0",
4141
"eslint-plugin-jest": "^23.8.2",
4242
"eslint-plugin-react": "^7.19.0",
4343
"eslint-plugin-react-hooks": "^3.0.0",
4444
"file-loader": "^5.0.2",
4545
"html-loader": "^0.5.5",
46-
"html-webpack-plugin": "^4.5.1",
46+
"html-webpack-plugin": "^5.5.0",
47+
"image-webpack-loader": "^8.1.0",
4748
"less": "^3.10.3",
48-
"less-loader": "^5.0.0",
49+
"less-loader": "^6.1.2",
4950
"less-vars-to-js": "^1.3.0",
5051
"raw-loader": "^4.0.2",
5152
"style-loader": "^1.1.3",
52-
"typescript": "^3.9.3",
53-
"webpack": "^5.0.0",
54-
"webpack-cli": "^4.3.1",
55-
"webpack-dev-server": "^3.11.1",
56-
"webpack-merge": "^5.0.0"
53+
"ts-loader": "^9.0.0",
54+
"typescript": "^4.8.3",
55+
"webpack": "^5.61.0",
56+
"webpack-cli": "^4.6.0",
57+
"webpack-dev-server": "^4.5.0",
58+
"webpack-merge": "^5.7.0"
5759
}
5860
}
141 KB
Loading

0 commit comments

Comments
 (0)