diff --git a/.circleci/config.yml b/.circleci/config.yml index 27eea45240..ec9151ee72 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -3,7 +3,7 @@ jobs: build: working_directory: /home/circleci/app docker: - - image: circleci/python:3-stretch-browsers + - image: circleci/python:3-buster-browsers steps: - checkout - setup_remote_docker @@ -15,6 +15,14 @@ jobs: sudo apt-get install -y nodejs libgeos-dev # Required for shapely sudo npm install -g @mapbox/cfn-config @mapbox/cloudfriend sudo pip3 install awscli --upgrade + - run: + name: Install GDAL and dependencies for pip gdal + command: | + echo "deb-src http://deb.debian.org/debian buster main" | sudo tee /etc/apt/sources.list.d/source-repos-tmp.list > /dev/null + cat "/etc/apt/sources.list.d/source-repos-tmp.list" + sudo apt update + sudo apt build-dep -y python3-gdal + sudo apt install gdal-bin libgdal-dev - run: name: Set folder permissions command: | @@ -39,14 +47,17 @@ jobs: virtualenv env $CIRCLE_WORKING_DIRECTORY/env/bin/pip install --upgrade pip $CIRCLE_WORKING_DIRECTORY/env/bin/pip install -r requirements.txt + # Install python gdal -- it MUST match the version of gdal installed + $CIRCLE_WORKING_DIRECTORY/env/bin/pip install gdal==$(gdalinfo --version | awk '{print $2}' | awk -F, '{print $1}') - run: name: Run JS Unit tests command: | # JS Unit Tests cd $CIRCLE_WORKING_DIRECTORY/tests/client mkdir $CIRCLE_WORKING_DIRECTORY/tests/client/junit + export OPENSSL_CONF=/etc/ssl/ $CIRCLE_WORKING_DIRECTORY/client/node_modules/.bin/karma start ./karma.conf.js \ - --single-run --browsers PhantomJS --reporters junit + --single-run --browsers FirefoxHeadless,ChromeHeadless --reporters junit environment: JUNIT_REPORT_PATH: $CIRCLE_WORKING_DIRECTORY/tests/client/junit/ JUNIT_REPORT_NAME: test-results.xml @@ -248,7 +259,7 @@ workflows: - deployment/hot-tasking-manager requires: - build - stack_name: "prod-restored" + stack_name: "production" environment_name: "production" postgres_db: POSTGRES_DB_PRODUCTION postgres_password: POSTGRES_PASSWORD_PRODUCTION diff --git a/.gitignore b/.gitignore index 265de0398e..9bf9297ce2 100644 --- a/.gitignore +++ b/.gitignore @@ -6,6 +6,8 @@ tasking-manager*.env client/node_modules/ client/assets/styles/css client/app/taskingmanager.config.js +client/id_preset_categories.json +client/app/id_preset_categories.js client/package-lock.json client/yarn.lock @@ -13,8 +15,6 @@ client/yarn.lock server/web/static/dist server/web/static/dist/ -# Ignore project files # -server/project-files # Ignore local logs logs/ @@ -47,6 +47,14 @@ Thumbs.db .elasticbeanstalk/ venv_aws/ +# VSCode +.vscode + +# Elastic Beanstalk Files +.elasticbeanstalk/* +!.elasticbeanstalk/*.cfg.yml +!.elasticbeanstalk/*.global.yml + # emacs files # \#*\# -*~ \ No newline at end of file +*~ diff --git a/Makefile b/Makefile index 0d918d54ad..9d4784a16a 100644 --- a/Makefile +++ b/Makefile @@ -30,7 +30,7 @@ refresh-translations: tests:test-client test-server test-client: - docker-compose exec app sh -c "cd /usr/src/app/tests/client && ../../client/node_modules/.bin/karma start ./karma.conf.js --single-run --browsers PhantomJS" + docker-compose exec app sh -c "cd /usr/src/app/tests/client && ../../client/node_modules/.bin/karma start ./karma.conf.js --single-run --browsers FirefoxHeadless,ChromeHeadless" test-server: docker-compose exec app sh -c "python -m unittest discover tests/server" diff --git a/client/app/about/about.html b/client/app/about/about.html index cdc8bdf644..afb6e38fd9 100644 --- a/client/app/about/about.html +++ b/client/app/about/about.html @@ -35,7 +35,7 @@
{{ 'The Tasking Manager was designed and built for the' | translate }} - {{'Kaart Team' | translate}}. + Kaart Team.
{{ 'With the invaluable support of:' | translate }} diff --git a/client/app/about/faq.html b/client/app/about/faq.html index ce7b0763c7..37136fec98 100644 --- a/client/app/about/faq.html +++ b/client/app/about/faq.html @@ -17,7 +17,7 @@
{{'A new and improved version of the Tasking Manager was developed by HOT with support by USAID and DFAT during 2017. More information about what’s new in TM3 can be found here: '| translate }} https://tasks.kaart.com/what-is-new. + href="https://tasks.kaart.com/what-is-new">https://tasks.kaart.com/what-is-new.
diff --git a/client/app/admin/create-project/create-project.html b/client/app/admin/create-project/create-project.html index f5d4e7dc96..5bfa2468fc 100644 --- a/client/app/admin/create-project/create-project.html +++ b/client/app/admin/create-project/create-project.html @@ -86,8 +86,9 @@
Create tasks from Mapillary Sequences.
Draw Bounding Box. Necessary to create Mapillary Sequences.
{{ 'Thanks for providing your contact info. We’ve sent you a confirmation email that you can check at a later time. Now you can get started mapping! If you’ve kept a task open, make sure to refresh the page.' | translate }}
++ {{ 'Not a valid email address' | translate }} +
++ {{ 'Error: setting your contact details' | translate }} +
++ {{ 'Error: sending your verification email' }} +
++ {{ 'A verification email was sent.' | translate }} +
+- {{ 'Not a valid email address' | translate }} -
-- {{ 'Error: setting your contact details' | translate }} -
-- {{ 'Error: sending your verification email' }} -
-- {{ 'A verification email was sent.' | translate }} -
+ {{ 'When you contribute to the Tasking Manager, it is important that notifications about the tasks and projects you contributed to are reaching you.' | translate }} {{ 'Before you begin mapping:' | translate }}
+ {{ 'Please go to your profile and add your email address' | translate }}.
+ {{ 'See here' | translate }} {{ 'for more information about how HOT will use and share your data.' | translate }}
+
{{ 'In order to start contributing, please' | translate }} {{ 'login first' | translate }}.
{{ 'You cannot select tasks for mapping on this project because you do not have the required mapper experience level.' | translate }}
{{ 'Choose a task for mapping:' | translate }}
{{ 'You must randomly select tasks' | translate }}
{{ 'The selected task is not in a state that allows mapping.' | translate }}
@@ -358,7 +361,7 @@{{ 'This task is available for mapping.' | translate }}
@@ -376,7 +379,7 @@{{ 'The selected task could not be locked.' | translate }}
{{ 'You cannot select tasks for mapping on this project because you do not have the required mapper experience level.' | translate }}
@@ -386,21 +389,20 @@{{ 'The selected task status could not be undone.' | translate }}
+ {{ 'When you contribute to the Tasking Manager, it is important that notifications about the tasks and projects you contributed to are reaching you.' | translate }} {{ 'Before you begin mapping:' | translate }}
+ {{ 'Please go to your profile and add your email address' | translate }}.
+ {{ 'See here' | translate }} {{ 'for more information about how HOT will use and share your data.' | translate }}
+
- {{ 'When you contribute on the Tasking Manager, it is important that notifications around the tasks and projects you participated are reaching you. Thus we require your email address.' | translate }}
- {{ 'Please go to your profile and add your email address' | translate }}.
- {{ 'You can inform yourself on our website about' | translate }}
- {{ 'how we handle your data' | translate }}.
-