Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
1207 commits
Select commit Hold shift + click to select a range
bd15187
Organisation retrieve api refactored to work asynchronously using dat…
prabinoid Aug 5, 2024
317f244
Refactor: Get organisation via organisation slug
prabinoid Aug 5, 2024
5baa408
Organisation delete apis refactored and migrations env database uri f…
prabinoid Aug 6, 2024
c4c3282
Organisation create, update, statistics refactored and field validato…
prabinoid Aug 8, 2024
3a5689e
Campaign apis refactored and updated organisations list query to retr…
prabinoid Aug 9, 2024
a76bc0d
Update campaign refactored
prabinoid Aug 12, 2024
89c2631
Campaign linkage apis with organisations refactored
prabinoid Aug 13, 2024
bf4dacc
Countries api refactored
prabinoid Aug 13, 2024
635db58
Project retrieve and countries api refactored
prabinoid Aug 15, 2024
a2c456e
Project list api and pagination util refactored
prabinoid Aug 21, 2024
aeaeee6
refactor: licenses
Anuj-Gupta4 Aug 22, 2024
79bf82f
Refactor: Project campaigns apis
prabinoid Aug 22, 2024
9b062e2
refactor: interests
Anuj-Gupta4 Aug 22, 2024
d844199
Teams module added to routers and teams get apis refactored.
prabinoid Aug 27, 2024
f42cff9
Project teams api and fixes in project get api queries
prabinoid Aug 27, 2024
af9c7a7
Project queries bbox api refactored
prabinoid Aug 29, 2024
1157f97
Project admin service, owner projects api and validators refactored
prabinoid Aug 31, 2024
cdb740b
Project detail summary and user touched projects api refactored
prabinoid Sep 3, 2024
c588ebb
fix: Campaigns list and allowed usernames list
prabinoid Sep 3, 2024
a2cd301
Project user activities apis refactored
prabinoid Sep 3, 2024
906eed8
Project contributions apis and other geom queries apis refactored
prabinoid Sep 4, 2024
938b969
refactor: comment
Anuj-Gupta4 Sep 5, 2024
f87fe56
Project statistics and User project statistics refactored
prabinoid Sep 9, 2024
4ad43cf
refactor: user's license acceptance
Anuj-Gupta4 Sep 5, 2024
0238e45
refactor: user rate contributions
Anuj-Gupta4 Sep 6, 2024
3c0954f
refactor: get user interests
Anuj-Gupta4 Sep 6, 2024
9a472df
[pre-commit.ci] auto fixes from pre-commit.com hooks
pre-commit-ci[bot] Sep 9, 2024
40c0763
Heartbeat api refactored and ohsome api environment import handled
prabinoid Sep 9, 2024
99bc37e
[pre-commit.ci] auto fixes from pre-commit.com hooks
pre-commit-ci[bot] Sep 9, 2024
a2ba7b9
Pre commit hooks refactor and db connection param json postgres port …
prabinoid Sep 9, 2024
f6ba182
Similar and Popular projects apis refactored and heartbeat api fixed
prabinoid Sep 10, 2024
aa87820
fix: field validator for OrganisationDTO and NewCampaignDTO
kaditya97 Sep 11, 2024
f13a023
fix: black formatting
kaditya97 Sep 11, 2024
0de7039
Project and user favorites apis refactored
prabinoid Sep 10, 2024
6976438
refactor: set user interests
Anuj-Gupta4 Sep 9, 2024
35d4930
refactor: get message
Anuj-Gupta4 Sep 9, 2024
76d1a36
refactor: get all notifications with filters
Anuj-Gupta4 Sep 10, 2024
b8bff52
refactor: unread message count
Anuj-Gupta4 Sep 11, 2024
f77e009
refactor: mark messages as read
Anuj-Gupta4 Sep 11, 2024
4b9f5bd
refactor: delete messages
Anuj-Gupta4 Sep 11, 2024
7b8abca
refactor: update notification time
Anuj-Gupta4 Sep 11, 2024
b97855a
[pre-commit.ci] auto fixes from pre-commit.com hooks
pre-commit-ci[bot] Sep 12, 2024
ae16270
refactor: get user(s)
Anuj-Gupta4 Sep 12, 2024
10bcb49
refactor: query users
Anuj-Gupta4 Sep 13, 2024
765ca29
Tasks meta data api refactored
prabinoid Sep 12, 2024
1785dd1
Lock task for mapping and its functions refactored
prabinoid Sep 13, 2024
8d0f5e1
fix: system and related api's migration
kaditya97 Sep 16, 2024
dbcd644
fix: black errors
kaditya97 Sep 16, 2024
e40f270
fix: black erros
kaditya97 Sep 16, 2024
dc6c8b6
fix: issues api's
kaditya97 Sep 23, 2024
e1655dd
fix: field validator for OrganisationDTO and NewCampaignDTO
kaditya97 Sep 11, 2024
9d6c96f
fix: black formatting
kaditya97 Sep 11, 2024
df3ac6e
refactor: set user interests
Anuj-Gupta4 Sep 9, 2024
04345f4
refactor: get message
Anuj-Gupta4 Sep 9, 2024
209b127
refactor: get all notifications with filters
Anuj-Gupta4 Sep 10, 2024
83abc1c
refactor: mark messages as read
Anuj-Gupta4 Sep 11, 2024
8e526c7
refactor: delete messages
Anuj-Gupta4 Sep 11, 2024
2af3df4
refactor: update notification time
Anuj-Gupta4 Sep 11, 2024
8c29722
[pre-commit.ci] auto fixes from pre-commit.com hooks
pre-commit-ci[bot] Sep 12, 2024
001c5a1
refactor: get user(s)
Anuj-Gupta4 Sep 12, 2024
eef5e7b
refactor: query users
Anuj-Gupta4 Sep 13, 2024
98c1575
Tasks meta data api refactored
prabinoid Sep 12, 2024
7b4ac60
Lock task for mapping and its functions refactored
prabinoid Sep 13, 2024
5694983
fix: system and related api's migration
kaditya97 Sep 16, 2024
08af613
fix: black errors
kaditya97 Sep 16, 2024
0d82310
[pre-commit.ci] auto fixes from pre-commit.com hooks
pre-commit-ci[bot] Sep 16, 2024
0180f72
fix: team api's
kaditya97 Sep 25, 2024
7e07bb8
[pre-commit.ci] auto fixes from pre-commit.com hooks
pre-commit-ci[bot] Sep 23, 2024
4466a1e
Invalidate all and lock a task for mapping refactored
prabinoid Sep 17, 2024
f82e244
Unlock task for mapping and related stats utils refactored
prabinoid Sep 23, 2024
d5b9271
Lock task for validation refactored
prabinoid Sep 24, 2024
5a65f56
Unlock task after validation refactored
prabinoid Sep 24, 2024
bb805d5
fix: precommit changes
kaditya97 Sep 25, 2024
59b016c
fix: sonarcloud suggestion
kaditya97 Sep 26, 2024
a2b9f1d
Stop task validation refactored
prabinoid Sep 26, 2024
0df99e2
Stop mapping task refactored
prabinoid Sep 26, 2024
41bd95d
Task undo last action refactored
prabinoid Sep 27, 2024
5ce0293
Map all tasks, Validate all tasks and Reset all tasks refactored
prabinoid Sep 27, 2024
9668267
fix: project post requests
kaditya97 Oct 1, 2024
a6ce1d5
fix: user action and related api's
kaditya97 Oct 1, 2024
c54d1fd
Extend task lock duration and Revert user action from task refactored
prabinoid Sep 30, 2024
9d2c6e7
Split task api and related methods refactored
prabinoid Oct 1, 2024
5ed714e
fix: user tasks api
kaditya97 Oct 1, 2024
7fb8577
[pre-commit.ci] auto fixes from pre-commit.com hooks
pre-commit-ci[bot] Oct 1, 2024
c85c3cb
Project tasks gpx and xml export
prabinoid Oct 2, 2024
038abf6
fix: project post api
kaditya97 Oct 7, 2024
eb52672
[pre-commit.ci] auto fixes from pre-commit.com hooks
pre-commit-ci[bot] Oct 7, 2024
72343df
fix: Project action filter and user stats
prabinoid Oct 8, 2024
7fb8744
JSONResponse handling and cleanups
prabinoid Oct 9, 2024
41e5cd4
fix project filters
prabinoid Oct 15, 2024
b196f65
Fix project responses and filters
prabinoid Oct 16, 2024
c82d4cd
fix project info dto
prabinoid Oct 16, 2024
7cd811a
fix project teams patch
prabinoid Oct 16, 2024
523c7e9
Project patch fixed and dtos refactored
prabinoid Oct 22, 2024
4636f37
Bulk action being applied for all tasks fixed, due date exception han…
prabinoid Oct 22, 2024
9c1b542
All messages, organisation retrieve and task activities fixes
prabinoid Oct 23, 2024
a7f2543
Project and notification duplication handled, organisation teams and …
prabinoid Oct 25, 2024
f35dd64
Messages, teams, comments, notification modules and project filters a…
prabinoid Oct 29, 2024
7d66e54
Teams managers and members assignment and retrieve query fixed
prabinoid Nov 4, 2024
9c9741d
Task dto last updated attribute made timezone aware and add teams by …
prabinoid Nov 4, 2024
4780945
Project clone and transfer project ownership refactored
prabinoid Nov 5, 2024
2a17017
Added root validator for project info dto
prabinoid Nov 5, 2024
caf4750
Split task url and geom fixed
prabinoid Nov 6, 2024
e42383a
Project, organisation teams deletion and other fixes
prabinoid Nov 6, 2024
ff52874
Http exception handler in the app for token expiration handling
prabinoid Nov 11, 2024
0cf7e7c
Register user, retrieve org by id and slug and user interests refactored
prabinoid Nov 12, 2024
3796607
feat(backend): Timestamps made utcnow and serialization done with utc…
prabinoid Nov 13, 2024
10b3bf6
fix: Join team by request
prabinoid Nov 14, 2024
e96cb27
Task and project card last contributions fixed and list dto for proje…
prabinoid Nov 15, 2024
5d6f039
fix: Project search and deletion.
prabinoid Nov 15, 2024
b0110b9
fix: clear priority areas, send message after validation, project com…
prabinoid Nov 18, 2024
df2823c
fix: Update teams and formatting
prabinoid Nov 18, 2024
1c112b1
* Team messaging background task,
prabinoid Nov 19, 2024
db1b300
fix: Invalid token exception in TokenAuthBackend
prabinoid Nov 19, 2024
a1d3aec
* Send message to contributors and background task.
prabinoid Nov 20, 2024
f16d1b5
Revert user task fixed and get latest task activity now returns disti…
prabinoid Nov 20, 2024
cdcbe13
* Send message after comment, parse usernames and mentions.
prabinoid Nov 26, 2024
e685b68
* Rebased against develop.
prabinoid Dec 2, 2024
b97cedc
Remove db connection dependency in routers
prabinoid Dec 3, 2024
ae98cfa
* Concurrent task validation using asyncio gather
prabinoid Dec 4, 2024
7a5e20f
fix: Recommended projects, my tasks in my contrib section and cleanups
prabinoid Dec 4, 2024
32ff414
* Asyncio cron job scheduler set up.
prabinoid Dec 11, 2024
662c532
Aoi, tasks and project non geometries exports and cleanups
prabinoid Dec 11, 2024
5a6f965
Remove atomic transaction from concurrent task execution
prabinoid Dec 13, 2024
c12a8df
fix: Tasks added to cloned projects
prabinoid Dec 13, 2024
d331cad
* Export projects as csv
prabinoid Dec 17, 2024
e9dda37
Private projects filters fixed and author names in list view and csv …
prabinoid Dec 20, 2024
716d9f5
Task statistics and filters refactored
prabinoid Dec 20, 2024
469a46d
init: locustfile added
mahesh-naxa Dec 17, 2024
6b3b348
Locust and compose files for performance bench marking and its setup …
prabinoid Dec 24, 2024
cd43d6c
* Organisation statistics.
prabinoid Dec 26, 2024
239e3f5
User statistics refactored.
prabinoid Dec 30, 2024
a17dfa2
refactor: cron job for auto unlock task.
prabinoid Jan 2, 2025
df72fb6
User statistics query results cast to int
prabinoid Jan 2, 2025
852a949
Remove sqlalchemy db configs
prabinoid Jan 2, 2025
6199e7e
feat: Cron jobs updated for stats update and validator service except…
prabinoid Jan 16, 2025
a54c3d2
fix: update aws-actions/amazon-ecs-deploy-task-definition to v2
nischalstha9 Jan 16, 2025
76e49fd
* Team membership and permission fixed for projects.
prabinoid Jan 17, 2025
1e8414d
project to map and validate sorting zero division case handled
prabinoid Jan 17, 2025
9a951e1
* Rebase against develop
prabinoid Jan 20, 2025
7b7d234
pm only dependency function and injection in the required functions
prabinoid Jan 21, 2025
da1a43a
interests and license deletion message and cron service
prabinoid Jan 24, 2025
c9d54b0
fix: project action and permission filters
prabinoid Jan 29, 2025
3b8235d
fix: User email sign up and changed size of database connection pool …
prabinoid Feb 3, 2025
45fa641
infra: add terragrunt config for alb & vpc
mahesh-naxa Oct 2, 2024
aa9d696
typo: alb now sources from its module
mahesh-naxa Oct 2, 2024
edfdf92
infra: rds module implementation
mahesh-naxa Oct 2, 2024
271cc10
infra: added iam and secret support for ecs
mahesh-naxa Oct 4, 2024
bfece9e
added inline modules within terraform-extras
mahesh-naxa Oct 7, 2024
9f423dc
created module for tm specific stuff, roles, secrets etc
mahesh-naxa Oct 7, 2024
41d00f4
env: common for all necessary modules
mahesh-naxa Oct 7, 2024
c9389df
dynamic terraform provider & backend
mahesh-naxa Oct 7, 2024
ea93ee8
added terragrunt conf for dev environment
mahesh-naxa Oct 7, 2024
7bd52cd
ref: consistent deployment env vars
mahesh-naxa Oct 7, 2024
f1b89cf
docs: add terraform readme
mahesh-naxa Oct 9, 2024
7b47297
docs: add terragrunt apply & destory examples
mahesh-naxa Nov 12, 2024
fa4b3bf
run: terragrunt hclfmt for consistent formatting
mahesh-naxa Nov 18, 2024
acfbe96
default_tags & provider generation updated.
mahesh-naxa Jan 6, 2025
b46977a
ref: all services now have consistent naming, tag, environments seper…
mahesh-naxa Jan 6, 2025
130b59f
final inputs for scaling policy and ecs modules
mahesh-naxa Jan 21, 2025
5a9c000
modules now sourced from tasking-manager-infra branch
mahesh-naxa Jan 21, 2025
e1acc9a
CI: add terragrunt action
nischalstha9 Jan 21, 2025
a88c34c
CI: terragrunt: moved to run-all action for multi directory application
nischalstha9 Jan 21, 2025
7cf9c8e
Infra: refactored infra code for staging deployment.
nischalstha9 Jan 22, 2025
e9f28cd
infra: ci: feat: migrate to ecs only plan and deploy mode using gh-ar…
nischalstha9 Jan 27, 2025
1a23a95
infra: tweak ecs container specs
nischalstha9 Jan 28, 2025
ca2014c
infra: finalization for staging deployment
nischalstha9 Jan 29, 2025
971a0c8
updated defaults env's for staging hot deployment
mahesh-naxa Jan 30, 2025
13b1319
update environment sets & moved secrets
mahesh-naxa Jan 30, 2025
c8a0fdb
add url to CORS Allowed list
mahesh-naxa Jan 30, 2025
4cdc1a3
updates to migration command & some default env vars
mahesh-naxa Jan 30, 2025
4a01201
updated ecs scaling policy max count to 3 for stag
mahesh-naxa Jan 30, 2025
5ab1320
CI: update ci to match new fastapi based staging deployment
nischalstha9 Feb 4, 2025
cf6bd5d
[pre-commit.ci] auto fixes from pre-commit.com hooks
pre-commit-ci[bot] Feb 4, 2025
8d39af0
fix: project to validate filter
prabinoid Feb 4, 2025
5a2cb55
fix: User statistics mapping and validation time timestamp conversion.
prabinoid Feb 6, 2025
fe16a30
Remove pm only dependency from intersecting tiles.
prabinoid Feb 6, 2025
120368e
[pre-commit.ci] auto fixes from pre-commit.com hooks
pre-commit-ci[bot] Feb 6, 2025
1ae75f4
feat: aiocache and caching implementation
prabinoid Feb 7, 2025
79989de
chore: change default domain to tasks-stage from naxa & add GHActions…
nischalstha9 Feb 11, 2025
1b9e707
TM_API_URL added to app config and application root path
prabinoid Feb 11, 2025
7ceb547
set country info to handle wkb centroid
prabinoid Feb 13, 2025
42ffa7c
Merge pull request #6745 from hotosm/fastapi-refactor
prabinoid Feb 13, 2025
c5aceec
Team role name in project summary and task statistics cache ttl set t…
prabinoid Feb 13, 2025
ee24daf
Merge pull request #6746 from hotosm/fastapi-refactor
prabinoid Feb 13, 2025
78a9d71
BaseException class extended from fastapi HTTPExeception class
prabinoid Feb 14, 2025
0187c5a
Merge pull request #6750 from hotosm/fastapi-refactor
prabinoid Feb 14, 2025
1e203b7
fix: bulk mentions team managers query
prabinoid Feb 17, 2025
a511d7b
Merge pull request #6753 from hotosm/fastapi-refactor
prabinoid Feb 17, 2025
d8aceaa
fix: mapped by others and validated by others query in user detailed …
prabinoid Feb 17, 2025
2770fde
Merge pull request #6754 from hotosm/fastapi-refactor
prabinoid Feb 17, 2025
666e127
Merge pull request #6707 from facebook/feat/update-node
ramyaragupathy Feb 18, 2025
c8f5dff
Merge pull request #6742 from hotosm/fix/partners-page-changes
ramyaragupathy Feb 18, 2025
76c7dab
Organisation made optional for project dto
prabinoid Feb 19, 2025
386106b
Merge pull request #6758 from hotosm/fastapi-refactor
prabinoid Feb 19, 2025
65de7ca
Filter by only active team members in project action permission
prabinoid Feb 21, 2025
905fb29
Merge pull request #6759 from hotosm/fastapi-refactor
prabinoid Feb 21, 2025
406e450
feat: http exception handler for formatting exception response, Profi…
prabinoid Feb 24, 2025
26b136b
Merge pull request #6762 from hotosm/fastapi-refactor
prabinoid Feb 24, 2025
a7e090a
Cors origin from env on config and defaults to allow all
prabinoid Feb 27, 2025
899863a
Merge pull request #6766 from hotosm/fastapi-refactor
prabinoid Feb 27, 2025
d468c9f
[pre-commit.ci] auto fixes from pre-commit.com hooks
pre-commit-ci[bot] Feb 27, 2025
36d0fde
Updated files for pre-commit hooks, refactored sync functions to asyn…
prabinoid Mar 3, 2025
b55f824
Line breaks for flake8 formatting
prabinoid Mar 3, 2025
8d5c055
black formatting updated
prabinoid Mar 3, 2025
52f2c3e
pre-commit checks fixed
prabinoid Mar 3, 2025
9c9bd76
httpx and pytest added and lockfile regenerated, test cases init setup
prabinoid Mar 4, 2025
7dd565c
fix: misfire gracetime removed from cron interval trigger
prabinoid Mar 4, 2025
81d6e50
Sentry init handled from env and pydantic serialization warnings fixed
prabinoid Mar 5, 2025
9c630fa
sentry variable config initialized with string
prabinoid Mar 5, 2025
6da5d8b
Project validators, remove redundant exceptions and unused functions,…
prabinoid Mar 6, 2025
ed1ef5c
feat: ci: run ci from either ecs or extras module
nischalstha9 Feb 4, 2025
49ed214
feat: auto find plan file name in terragrunt apply if triggered workf…
nischalstha9 Feb 6, 2025
4f9fb04
ci: terragrunt: migrate to hotosm/gh-workflows
nischalstha9 Feb 11, 2025
cb60063
feat: use plan file that encrypt artifacts
nischalstha9 Feb 11, 2025
38394a8
fix: aws region for terragrunt workflow
nischalstha9 Feb 19, 2025
88330a9
fix: add logic to deploy from refs/heads/develop
nischalstha9 Feb 19, 2025
a57fd52
feat: add service for cronjob and improve scaling using same alarms o…
nischalstha9 Mar 6, 2025
0167b9e
Merge pull request #6776 from hotosm/ci/feat/terragrunt-multi-module
prabinoid Mar 6, 2025
348c673
[pre-commit.ci] auto fixes from pre-commit.com hooks
pre-commit-ci[bot] Mar 6, 2025
41fbb78
Partner logo url changed to str instead of httpurl type
prabinoid Mar 7, 2025
2278ac8
Merge pull request #6777 from hotosm/fastapi-refactor
prabinoid Mar 7, 2025
44b4092
pre-commit over-indent check failure fixed
prabinoid Mar 10, 2025
9b0f82b
Merge pull request #6778 from hotosm/fastapi-refactor
prabinoid Mar 10, 2025
d6d31f8
fix (infra): ecs scaling policy for staging
nischalstha9 Mar 10, 2025
a214d65
fix (ci): run ci for backend path only && add workflow dispatch
nischalstha9 Mar 10, 2025
d08de81
Locust removed, autoescape false on template service and refactor tes…
prabinoid Mar 12, 2025
c411d31
Merge pull request #6780 from hotosm/fastapi-refactor
prabinoid Mar 12, 2025
988306c
docs: update docs for infra/application deployment
nischalstha9 Mar 12, 2025
564a1ab
infra (ecs-cron): update terraform source
nischalstha9 Mar 12, 2025
7a0e086
Merge pull request #6649 from hotosm/tasking-manager-fastapi
dakotabenjamin Mar 12, 2025
f4f0fbb
* Organisation list order by name.
prabinoid Mar 14, 2025
427c842
Merge pull request #6781 from hotosm/fastapi-refactor
prabinoid Mar 14, 2025
e2cf858
Update example env, Add frontend to docker compose, Sentry dns made o…
prabinoid Mar 17, 2025
de017db
Merge pull request #6783 from hotosm/fastapi-refactor
prabinoid Mar 17, 2025
76dae1a
feat: add option to enable or disable execute
nischalstha9 Mar 17, 2025
c54c401
refactor(CI): refactor CI for new infra
nischalstha9 Mar 14, 2025
1b77dfb
fix: merge terragrunt plan & apply
nischalstha9 Mar 17, 2025
75115e6
fix(reliability): enhance dockerfile for reliability scan Sonarqube
nischalstha9 Mar 18, 2025
e7d09b3
Merge pull request #6782 from hotosm/ci/gh-workflows
dakotabenjamin Mar 19, 2025
fc663c1
Add develop environment for terragrunt config
dakotabenjamin Mar 19, 2025
312d03b
Merge pull request #6787 from hotosm/infra/add-dev-terragrunt
nischalstha9 Mar 20, 2025
a3c2a8b
Merge pull request #6784 from hotosm/infra/ecs/execute-opt
nischalstha9 Mar 20, 2025
66644f1
infra: freeze version for all modules
nischalstha9 Mar 20, 2025
91733c6
Merge pull request #6788 from hotosm/infra/version-freeze
nischalstha9 Mar 20, 2025
236ea78
fix: default profile in develop/deployment_env.hcl
nischalstha9 Mar 20, 2025
18a19f9
feat(ci): add vpc module as runnable for infra in case of develop inp…
nischalstha9 Mar 20, 2025
3ef96c6
Merge pull request #6785 from hotosm/tasking-manager-fastapi
dakotabenjamin Mar 20, 2025
3c258f3
fix(infra): bump ecs infra version to fix alarm names based on service
nischalstha9 Mar 20, 2025
a998273
infra(ecs): enable sentry
nischalstha9 Mar 21, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
154 changes: 107 additions & 47 deletions .circleci/config.yml
Original file line number Diff line number Diff line change
@@ -1,14 +1,16 @@
version: 2.1

orbs:
aws-cli: circleci/aws-cli@3.1
aws-cli: circleci/aws-cli@4.1.1
aws-ecs: circleci/aws-ecs@4.0.0
opsgenie: opsgenie/opsgenie@1.0.8


jobs:
frontend-code-test:
resource_class: large
docker:
- image: cimg/node:16.20
- image: cimg/node:22.13.0
working_directory: /home/circleci/tasking-manager
steps:
- checkout
Expand All @@ -28,9 +30,10 @@ jobs:
- env
- run:
name: Run yarn test
no_output_timeout: 20m
command: |
cd ${CIRCLE_WORKING_DIRECTORY}/frontend/
CI=true yarn test -w 1
CI=true yarn test -w 1 --silent
CI=true GENERATE_SOURCEMAP=false yarn build

backend-code-check-PEP8:
Expand All @@ -40,7 +43,7 @@ jobs:
- checkout
- run:
name: flake8 tests
command: |
command: |
pip install flake8
flake8 manage.py backend tests migrations

Expand All @@ -51,8 +54,8 @@ jobs:
- checkout
- run:
name: black tests
command: |
pip install black
command: |
pip install 'black==23.12.1' ## TODO: Update to version 24
black --check manage.py backend tests migrations

backend-functional-tests:
Expand All @@ -68,7 +71,7 @@ jobs:
TM_ORG_CODE: "CICode"
TM_ORG_NAME: "CircleCI Test Organisation"

- image: cimg/postgres:14.2-postgis
- image: cimg/postgres:14.9-postgis
environment:
POSTGRES_USER: taskingmanager
POSTGRES_DB: test_tm
Expand All @@ -79,14 +82,7 @@ jobs:
- run: sudo apt-get update
- run: sudo apt-get -y install libgeos-dev # Required for shapely
- run: sudo apt-get -y install proj-bin libproj-dev
- run:
name: Configure Postgresql Test database
command: |
psql \
-d $SQLALCHEMY_DATABASE_URI \
-c "CREATE EXTENSION postgis;"
- run: pip install --upgrade pip pdm
- run: pdm config --global python.use_venv False
- run: pip install --upgrade pip pdm==2.18.1
- run: pdm export --dev --without-hashes > requirements.txt
- run: pip install -r requirements.txt
- run: mkdir --mode 766 -p /tmp/logs
Expand All @@ -113,13 +109,13 @@ jobs:
description: "Cloudformation stack name"
type: string
docker:
- image: cimg/postgres:15.1-postgis
- image: cimg/postgres:15.4-postgis
steps:
- aws-cli/setup:
role-arn: "arn:aws:iam::$ORG_AWS_ACCOUNT_ID:role/CircleCI-OIDC-Connect"
profile-name: "OIDC-Profile"
role-session-name: "database-snapshot"
session-duration: "2700"
role_arn: "arn:aws:iam::$ORG_AWS_ACCOUNT_ID:role/CircleCI-OIDC-Connect"
profile_name: "OIDC-Profile"
role_session_name: "database-snapshot"
session_duration: "2700"
- run:
name: Find the instance ID of the database in the stack to backup
command: |
Expand All @@ -138,7 +134,6 @@ jobs:
--output text)
- run:
name: Make Database Backup
no_output_timeout: 15m
command: |
aws rds wait db-instance-available \
--db-instance-identifier ${RDS_ID}
Expand Down Expand Up @@ -189,14 +184,14 @@ jobs:
working_directory: /home/circleci/tasking-manager
resource_class: medium
docker:
- image: cimg/python:3.10.7-node
- image: cimg/node:22.13.0
steps:
- checkout
- aws-cli/setup:
role-arn: "arn:aws:iam::$ORG_AWS_ACCOUNT_ID:role/CircleCI-OIDC-Connect"
profile-name: "OIDC-Profile"
role-session-name: "backend-deploy"
session-duration: "2700"
role_arn: "arn:aws:iam::$ORG_AWS_ACCOUNT_ID:role/CircleCI-OIDC-Connect"
profile_name: "OIDC-Profile"
role_session_name: "backend-deploy"
session_duration: "2700"
- run: sudo apt-get update
- run: sudo apt-get -y install libgeos-dev jq
- run: sudo yarn global add @mapbox/cfn-config @mapbox/cloudfriend
Expand All @@ -214,30 +209,45 @@ jobs:
--arg DBPARAMG "<< parameters.pg_param_group >>" \
'.GitSha = $GITSHA | .TaskingManagerBackendAMI = $AMI | .DatabaseEngineVersion = $PGVERSION | .DatabaseInstanceType = $DBTYPE | .DatabaseParameterGroupName = $DBPARAMG | .TaskingManagerBackendInstanceType = $EC2TYPE' \
/tmp/tasking-manager.cfn.json > "$tmpfile" && mv "$tmpfile" $CIRCLE_WORKING_DIRECTORY/cfn-config-<< parameters.stack_name >>.json
- deploy:
- run:
name: Deploy to << parameters.stack_name >>
command: |
export NODE_PATH=/usr/local/share/.config/yarn/global/node_modules/
validate-template $CIRCLE_WORKING_DIRECTORY/scripts/aws/cloudformation/tasking-manager.template.js
export JSON_CONFIG="$(< $CIRCLE_WORKING_DIRECTORY/cfn-config-<< parameters.stack_name >>.json)"
cfn-config update << parameters.stack_name >> $CIRCLE_WORKING_DIRECTORY/scripts/aws/cloudformation/tasking-manager.template.js -f -c hot-cfn-config -t hot-cfn-config -r $AWS_REGION -p "$JSON_CONFIG"

backend_deploy_containers:
working_directory: /home/circleci/tasking-manager
docker:
- image: cimg/python:3.10.7
steps:
- checkout
- aws-cli/setup:
role_arn: "arn:aws:iam::$ORG_AWS_ACCOUNT_ID:role/CircleCI-OIDC-Connect"
profile_name: "OIDC-Profile"
role_session_name: "backend-deploy-containers"
session_duration: "2700"
- run: sudo apt-get update
- run: sudo apt-get -y install curl
- run: echo "Run AWS Fargate"

frontend_deploy:
working_directory: /home/circleci/tasking-manager
resource_class: large
docker:
- image: cimg/python:3.10.7-node
- image: cimg/node:22.13.0
parameters:
stack_name:
description: "the name of the stack for cfn-config"
type: string
steps:
- checkout
- aws-cli/setup:
role-arn: "arn:aws:iam::$ORG_AWS_ACCOUNT_ID:role/CircleCI-OIDC-Connect"
profile-name: "OIDC-Profile"
role-session-name: "frontend-deploy"
session-duration: "1800"
role_arn: "arn:aws:iam::$ORG_AWS_ACCOUNT_ID:role/CircleCI-OIDC-Connect"
profile_name: "OIDC-Profile"
role_session_name: "frontend-deploy"
session_duration: "1800"
- run:
name: Deploy Frontend to S3
command: |
Expand Down Expand Up @@ -283,7 +293,7 @@ workflows:
name: Deploy backend production
gitsha: $CIRCLE_SHA1
stack_name: "tm4-production"
host_ami: "ami-01e5ff16fd6e8c542"
host_ami: "/aws/service/debian/release/11/20240813-1838/amd64"
backend_instance_type: c6a.large
pg_version: "13.10"
pg_param_group: "default.postgres13"
Expand Down Expand Up @@ -346,7 +356,7 @@ workflows:
name: Deploy backend production
gitsha: $CIRCLE_SHA1
stack_name: "tm4-production"
host_ami: "ami-01e5ff16fd6e8c542"
host_ami: "/aws/service/debian/release/11/20240813-1838/amd64"
backend_instance_type: c6a.large
pg_version: "13.10"
pg_param_group: "default.postgres13"
Expand All @@ -373,7 +383,7 @@ workflows:
name: Deploy TeachOSM Backend
gitsha: $CIRCLECI_SHA1
stack_name: "teachosm"
host_ami: "ami-01e5ff16fd6e8c542"
host_ami: "/aws/service/debian/release/11/20240813-1838/amd64"
requires:
- backend-functional-tests
context: tasking-manager-teachosm
Expand All @@ -384,16 +394,14 @@ workflows:
- backend-functional-tests
context: tasking-manager-teachosm

development-staging-all:
staging-all:
when:
and:
- not:
matches:
pattern: "^deployment/.*"
value: << pipeline.git.branch >>
- or:
- equal: [ develop, << pipeline.git.branch >> ]
- equal: [ staging-test, << pipeline.git.branch >> ]
- equal: [ main, << pipeline.git.branch >> ]
jobs:
- database-backup:
name: Backup staging database
Expand All @@ -410,10 +418,10 @@ workflows:
- backend-code-check-Black
- backend-functional-tests
- backend_deploy:
name: Deploy development/staging backend
name: Deploy staging backend
gitsha: $CIRCLE_SHA1
stack_name: "staging"
host_ami: "ami-01e5ff16fd6e8c542"
host_ami: "/aws/service/debian/release/11/20240813-1838/amd64"
pg_version: "14.8"
pg_param_group: "default.postgres14"
db_instance_type: "db.t4g.small"
Expand All @@ -427,24 +435,76 @@ workflows:
- org-global
- tasking-manager-staging
- frontend_deploy:
name: Deploy development/staging frontend
name: Deploy staging frontend
stack_name: "staging"
requires:
- frontend-code-test
context:
- org-global
- tasking-manager-staging

development-all:
when:
and:
- not:
matches:
pattern: "^deployment/.*"
value: << pipeline.git.branch >>
- or:
## - equal: [ develop, << pipeline.git.branch >> ] # Disabled while we use dev setup for e2e testing
- equal: [ dev-switch-to-sandbox, << pipeline.git.branch >> ]
jobs:
- database-backup:
name: Backup development database
stack_name: "dev"
requires:
- backend-code-check-PEP8
- backend-code-check-Black
- backend-functional-tests
context:
- org-global
- tasking-manager-dev
- frontend-code-test
- backend-code-check-PEP8
- backend-code-check-Black
- backend-functional-tests
- backend_deploy:
name: Deploy development backend
gitsha: $CIRCLE_SHA1
stack_name: "dev"
host_ami: "/aws/service/debian/release/11/20240813-1838/amd64"
pg_version: "14.10"
pg_param_group: "default.postgres14"
db_instance_type: "db.t4g.small"
backend_instance_type: "t3.medium"
requires:
- Backup development database
- backend-code-check-PEP8
- backend-code-check-Black
- backend-functional-tests
context:
- org-global
- tasking-manager-dev
- frontend_deploy:
name: Deploy development frontend
stack_name: "dev"
requires:
- frontend-code-test
context:
- org-global
- tasking-manager-dev

build-only-all:
when:
not:
matches:
pattern: "^deployment/.*"
value: << pipeline.git.branch >>
or: # don't run this workflow for deployment branches
- matches:
pattern: "^deployment/.*"
value: << pipeline.git.branch >>
- equal: [ develop, << pipeline.git.branch >> ]
- equal: [ main, << pipeline.git.branch >> ]
jobs:
- frontend-code-test
- backend-code-check-PEP8
- backend-code-check-Black
- backend-functional-tests


2 changes: 1 addition & 1 deletion .circleci/rdsid.sh
Original file line number Diff line number Diff line change
Expand Up @@ -6,4 +6,4 @@ for line in $ARNS; do
if [[ ! -z $MATCHES ]]; then
echo $MATCHES
fi
done
done
2 changes: 1 addition & 1 deletion .coveragerc
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ exclude_lines =

# Don't complain if tests don't hit defensive assertion code:
except Exception as e:


ignore_errors = True

Expand Down
1 change: 0 additions & 1 deletion .dockerignore
Original file line number Diff line number Diff line change
Expand Up @@ -20,4 +20,3 @@ frontend/package-lock.json
frontend/.env
frontend/.eslintcache
frontend/coverage/

13 changes: 13 additions & 0 deletions .github/FUNDING.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
# These are supported funding model platforms

github: hotosm
patreon: # Replace with a single Patreon username
open_collective: # Replace with a single Open Collective username
ko_fi: # Replace with a single Ko-fi username
tidelift: # Replace with a single Tidelift platform-name/package-name e.g., npm/babel
community_bridge: # Replace with a single Community Bridge project-name e.g., cloud-foundry
liberapay: # Replace with a single Liberapay username
issuehunt: # Replace with a single IssueHunt username
otechie: # Replace with a single Otechie username
lfx_crowdfunding: # Replace with a single LFX Crowdfunding project-name e.g., cloud-foundry
custom: # Replace with up to 4 custom sponsorship URLs e.g., ['link1', 'link2']
Loading