Upgrade our app to use python 3.10. (#2437)
* Hack that gets me running on cloudtop py3.10. * Update other references 3.9 -> 3.10 * Update yaml runtime version * Added TODO for cloud debugger
This commit is contained in:
Родитель
eafa54913b
Коммит
ffeb6b2daa
|
@ -11,7 +11,7 @@
|
|||
// Configure properties specific to VS Code.
|
||||
"vscode": {
|
||||
// Set *default* container specific settings.json values on container create.
|
||||
"settings": {
|
||||
"settings": {
|
||||
"python.defaultInterpreterPath": "/workspace/cs-env/bin/python",
|
||||
"python.editor.tabSize": 2,
|
||||
"python.linting.enabled": true,
|
||||
|
@ -36,7 +36,7 @@
|
|||
"python.languageServer": "Jedi",
|
||||
"python.testing.unittestEnabled": true
|
||||
},
|
||||
|
||||
|
||||
// Add the IDs of extensions you want installed when the container is created.
|
||||
"extensions": [
|
||||
"ms-python.python"
|
||||
|
@ -55,7 +55,7 @@
|
|||
// Use 'postCreateCommand' to run commands after the container is created.
|
||||
// pip version https://github.com/microsoft/vscode-python/issues/18802
|
||||
// Need to install pylint inside the virutalenv because the global one does not honor it.
|
||||
"postCreateCommand": "python3.9 -m venv cs-env; . cs-env/bin/activate; python -m pip install pylint==2.13.4; npm run setup",
|
||||
"postCreateCommand": "python3.10 -m venv cs-env; . cs-env/bin/activate; python -m pip install pylint==2.13.4; npm run setup",
|
||||
|
||||
// Comment out to connect as root instead. More info: https://aka.ms/vscode-remote/containers/non-root.
|
||||
"remoteUser": "vscode"
|
||||
|
|
|
@ -9,12 +9,12 @@ services:
|
|||
# Update 'VARIANT' to pick a version of Python: 3, 3.10, 3.9, 3.8, 3.7, 3.6
|
||||
# Append -bullseye or -buster to pin to an OS version.
|
||||
# Use -bullseye variants on local arm64/Apple Silicon.
|
||||
VARIANT: 3.9-bullseye
|
||||
VARIANT: 3.10-bullseye
|
||||
# Optional Node.js version to install
|
||||
NODE_VERSION: "18"
|
||||
|
||||
volumes:
|
||||
- ..:/workspace:cached
|
||||
- ..:/workspace:cached
|
||||
|
||||
# Overrides default command so things don't shut down after the process ends.
|
||||
command: sleep infinity
|
||||
|
|
|
@ -18,7 +18,7 @@ jobs:
|
|||
- name: set up Python
|
||||
uses: actions/setup-python@v2
|
||||
with:
|
||||
python-version: '3.9'
|
||||
python-version: '3.10'
|
||||
|
||||
- name: pre-installation
|
||||
run: |
|
||||
|
|
|
@ -27,7 +27,7 @@ jobs:
|
|||
- name: set up Python
|
||||
uses: actions/setup-python@v2
|
||||
with:
|
||||
python-version: '3.9'
|
||||
python-version: '3.10'
|
||||
|
||||
- name: pre-installation
|
||||
run: |
|
||||
|
@ -52,4 +52,4 @@ jobs:
|
|||
- run: npx playwright install-deps
|
||||
|
||||
- name: Run web test runner
|
||||
run: npm run webtest
|
||||
run: npm run webtest
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
# This GAE service contains most of the app, including all UI pages.
|
||||
|
||||
runtime: python39
|
||||
runtime: python310
|
||||
service: default
|
||||
instance_class: F4_1G
|
||||
|
||||
|
@ -41,7 +41,7 @@ app_engine_apis: true
|
|||
|
||||
env_variables:
|
||||
GAE_USE_SOCKETS_HTTPLIB : ''
|
||||
# Redis envs
|
||||
# Redis envs
|
||||
REDISHOST: '10.231.56.251'
|
||||
REDISPORT: '6379'
|
||||
|
||||
|
|
2
app.yaml
2
app.yaml
|
@ -1,6 +1,6 @@
|
|||
# This GAE service contains most of the app, including all UI pages.
|
||||
|
||||
runtime: python39
|
||||
runtime: python310
|
||||
service: default
|
||||
instance_class: F4_1G
|
||||
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
runtime: python39
|
||||
runtime: python310
|
||||
service: notifier
|
||||
|
||||
handlers:
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
runtime: python39
|
||||
runtime: python310
|
||||
service: notifier
|
||||
|
||||
handlers:
|
||||
|
|
|
@ -8,11 +8,11 @@
|
|||
"node": ">=18.0.0"
|
||||
},
|
||||
"scripts": {
|
||||
"setup": "npm ci; python3.9 -m venv cs-env; npm run deps",
|
||||
"setup": "npm ci; python3.10 -m venv cs-env; npm run deps",
|
||||
"clean-setup": "rm -rf node_modules cs-env; npm run setup",
|
||||
"deps": "source cs-env/bin/activate; pip install -r requirements.txt --upgrade; pip install -r requirements.dev.txt --upgrade",
|
||||
"dev-deps": "echo 'dev-deps is no longer needed'",
|
||||
"do-tests": "source cs-env/bin/activate; curl -X POST 'http://localhost:15606/reset' && python3 -m unittest discover -p '*_test.py' -b",
|
||||
"do-tests": "source cs-env/bin/activate; curl -X POST 'http://localhost:15606/reset' && python3.10 -m unittest discover -p '*_test.py' -b",
|
||||
"start-emulator-persist": "gcloud beta emulators datastore start --host-port=:15606 --consistency=1.0",
|
||||
"start-emulator": "gcloud beta emulators datastore start --host-port=:15606 --no-store-on-disk --consistency=1.0",
|
||||
"stop-emulator": "curl -X POST 'http://localhost:15606/shutdown'",
|
||||
|
@ -20,13 +20,13 @@
|
|||
"watch": "gulp watch",
|
||||
"start-app": "npm run build && curl --retry 4 http://localhost:15606/ --retry-connrefused && ./scripts/start_server.sh",
|
||||
"start": "source cs-env/bin/activate; (npm run start-emulator-persist > /dev/null 2>&1 &); npm run start-app; status=$?; npm run stop-emulator; exit $status",
|
||||
"stop": "killall cs-env/bin/python3.9",
|
||||
"stop": "killall cs-env/bin/python3.10",
|
||||
"test": "(npm run start-emulator > /dev/null 2>&1 &); sleep 6; curl --retry 4 http://localhost:15606/ --retry-connrefused; npm run do-tests; status=$?; npm run stop-emulator; exit $status",
|
||||
"webtest": "web-test-runner \"client-src/**/*_test.js\" --node-resolve --playwright --browsers chromium firefox",
|
||||
"webtest-coverage": "web-test-runner \"client-src/**/*_test.js\" --node-resolve --playwright --coverage --browsers chromium firefox",
|
||||
"do-coverage": "coverage3 erase && coverage3 run -m unittest discover -p '*_test.py' -b && coverage3 html",
|
||||
"coverage": "source cs-env/bin/activate; (npm run start-emulator > /dev/null 2>&1 &); sleep 3; curl --retry 4 http://localhost:15606/ --retry-connrefused; npm run do-coverage; npm run stop-emulator",
|
||||
"view-coverage": "pushd htmlcov/; python3 -m http.server 8080; popd",
|
||||
"view-coverage": "pushd htmlcov/; python3.10 -m http.server 8080; popd",
|
||||
"mypy": "source cs-env/bin/activate; mypy --ignore-missing-imports --exclude cs-env/ --exclude appengine_config.py .",
|
||||
"lint": "gulp lint-fix && lit-analyzer \"client-src/elements/chromedash-!(featurelist)*.js\"",
|
||||
"presubmit": "npm test && npm run webtest && npm run lint && npm run mypy",
|
||||
|
|
|
@ -6,7 +6,11 @@ appengine-python-standard>=1.0.0
|
|||
html5lib==1.1
|
||||
funcsigs==1.0.2
|
||||
google-api-python-client==2.47.0
|
||||
google-python-cloud-debugger==2.18
|
||||
|
||||
# TODO(jrobbins): Add this back or replace it when python 3.10 is supported.
|
||||
# google-python-cloud-debugger==2.18
|
||||
# See https://github.com/GoogleCloudPlatform/cloud-debug-python/issues/33
|
||||
|
||||
google-cloud-tasks==2.7.0
|
||||
google-cloud-ndb==1.11.1
|
||||
google-cloud-logging==3.0.0
|
||||
|
|
Загрузка…
Ссылка в новой задаче