54 Commits (885a7444bcaaf2dfab2169ea16bd316e56b44c37)

Author SHA1 Message Date
Roman Donchenko 330f123785
Fix some typos (#5601) 3 years ago
ddx-day 0f0913c138
Django social account sso (#5059)
Issue: https://github.com/opencv/cvat/issues/1217

Currently there are a few proposals for SSO authentication to bypass the
current user/password login on the UI. By using Django social accounts
it is also possible to use SSO on the API, retrieving the security token
by passing the code from the OAuth2 workflow. This is an example using
Amazon Cognito, but any other social account could also be added.

### Motivation and context
Currently CVAT has no functionality to log in with SSO. Other current
proposals bypass the current Django framework to add SSO in the UI only,
but still use username and password for the API. Using Django social
accounts integrates SSO with the API as well, allowing it to be used as
an alternative to the username and password, but can also be used
together with other SSO frameworks that are UI only.

### How has this been tested?
Unit tests for SSO manager in cvat-core and integration test with
cvat-sdk for /auth/cognito endpoint.

### Checklist
<!-- Go over all the following points, and put an `x` in all the boxes
that apply.
If an item isn't applicable by a reason then ~~explicitly
strikethrough~~ the whole
line. If you don't do that github will show an incorrect process for the
pull request.
If you're unsure about any of these, don't hesitate to ask. We're here
to help! -->
- [x] I submit my changes into the `develop` branch
- [ ] I have added a description of my changes into
[CHANGELOG](https://github.com/cvat-ai/cvat/blob/develop/CHANGELOG.md)
file
- [x] I have updated the [documentation](
https://github.com/cvat-ai/cvat/blob/develop/README.md#documentation)
accordingly
- [x] I have added tests to cover my changes
- [x] I have linked related issues ([read github docs](

https://help.github.com/en/github/managing-your-work-on-github/linking-a-pull-request-to-an-issue#linking-a-pull-request-to-an-issue-using-a-keyword))
- [ ] I have increased versions of npm packages if it is necessary
([cvat-canvas](https://github.com/cvat-ai/cvat/tree/develop/cvat-canvas#versioning),

[cvat-core](https://github.com/cvat-ai/cvat/tree/develop/cvat-core#versioning),
[cvat-data](https://github.com/cvat-ai/cvat/tree/develop/cvat-data#versioning)
and
[cvat-ui](https://github.com/cvat-ai/cvat/tree/develop/cvat-ui#versioning))

### License

- [x] I submit _my code changes_ under the same [MIT License](
https://github.com/cvat-ai/cvat/blob/develop/LICENSE) that covers the
project.
  Feel free to contact the maintainers if that's a concern.

Co-authored-by: Melanie Day <mday@EYEDIAGNOSIS.local>
Co-authored-by: Maria Khrustaleva <maria@cvat.ai>
Co-authored-by: Nikita Manovich <nikita@cvat.ai>
3 years ago
Andrey Zhavoronkov fd7d8024f9
Splitted default queue to import/export, fixed django-rq admin page (#5555) 3 years ago
Andrey Zhavoronkov cb512fb584
Added missed CVAT_REDIS_PASSWORD for cvat_utils (#5530) 3 years ago
Roman Donchenko 580ae49e5a
Migrate to Docker Compose V2 (#5524)
Also, migrate to the version less Compose file format.

Compose V1 is EOL:
<https://www.docker.com/blog/announcing-compose-v2-general-availability/>.
3 years ago
Maxim Zhiltsov ec3e1f34a4
Better reporting for user limits (#5225)
- Added explanatory messages for actions denied for user limits
- Fixed few rules and checks
- Upgraded OPA version
3 years ago
Roman Donchenko a6e5813233
Make the Python test log less messy (#5456) 3 years ago
Andrey Zhavoronkov 980c019427
PostgresSQL DB v15 and health check endpoint (#5312) 3 years ago
Maria Khrustaleva bb487165dd
CVAT authentication (#5147) 3 years ago
Andrey Zhavoronkov 49bdef01f1
IAM OPA bundle for dev environment (#5190) 3 years ago
Andrey Zhavoronkov 9cf2989546
Init OPA rules with API instead of file binding (#5047) 3 years ago
Kirill Sizov bae7564968
Add webhooks (#4863)
Co-authored-by: “klakhov” <kirill.lakhov@cvat.ai>
Co-authored-by: Boris <sekachev.bs@gmail.com>
Co-authored-by: kirill-sizov <kirill.sizov@intel.com>
3 years ago
Nikita Manovich 393392c527 Bump version: v2.3.0.alpha 3 years ago
Nikita Manovich 79ce99acc5 Updated the version of release: v2.2.0 3 years ago
Andrey Zhavoronkov 65a2610636
Fixed invocation of serverless functions (#4907) 3 years ago
Andrey Zhavoronkov 4167a4e40c
Initial version of update_version.py script to bump CVAT version (#4889) 3 years ago
Andrey Zhavoronkov 5e2eda7601
Extend helm to support Serverless functions and Analytics (#110) 4 years ago
Kirill Sizov 67eca0669e
Publishing dev version of docker images (#53) 4 years ago
Kirill Sizov 3d3903c01f
Rename Docker images (#12) 4 years ago
Boris Sekachev 4f1a778d22
Fixed Intel license headers (#119) 4 years ago
Nikita Manovich ff30b776cf
Fix serverless functions on Mac (#29)
* Fix serverless functions on Mac. Use host.docker.internal as an alias for localhost.
* Updated the CHANGELOG.md
* Fix unit tests for the lambda manager.
4 years ago
Andrey Zhavoronkov 976e40393b
Kibana public/private access using IAM (#4240)
* removed djago_reproxy dependency

* fix

* added visibility option, added tests

* updated changelog

* fixed comments

* added rule for admin into .csv, regenerate analytics_test.gen.rego

Co-authored-by: Nikita Manovich <nikita.manovich@intel.com>
4 years ago
Nikita Manovich 4708b5ecf8
IAM: Open Policy Agent integration (#3788)
Co-authored-by: Boris Sekachev <boris.sekachev@intel.com>
Co-authored-by: Dmitry Kruchinin <dmitryx.kruchinin@intel.com>
4 years ago
Andrey Zhavoronkov 5446816708
added missed restart:always option for traefik service (#3600) 5 years ago
Tadej Svetina 6055be499e
Replace Nginx proxy with Traefik (#3409)
* Replace Nginx with Traefik

* Comment Traefik dashboard commands and ports

* Fix cvat service port

* Simplify traefik dashboard instructions

* Add license to docker-compose files

* Update all mentions of CVAT_HOST in the docs

* Add link to Traefik documentation on router rules

* Return base CVAT port to 8080

* Fix spelling in documentation

* Fix port indentaion in docker-compose file

* Fix Traefik dashboard config

* Update changelog

* Adapt serverless dockerfile

* Update analytics dockerfile

* Update analytics docker compose file

* Fix linting issues

* fixed linter issues

Co-authored-by: Andrey Zhavoronkov <andrey.zhavoronkov@intel.com>
5 years ago
Dmitry Agapov d2a1d12fba
Integration with an internal training server (#2785)
Co-authored-by: Boris Sekachev <boris.sekachev@intel.com>
Co-authored-by: Nikita Manovich <nikita.manovich@intel.com>
5 years ago
Andrey Zhavoronkov 5b46b516dd
Added backup/restore guide (#2964) 5 years ago
Andrey Zhavoronkov 108947fbce
Added CI workflow to publish CVAT images (#2766)
* Configured CI workflow for public images
* updated license headers
* align list item indent rule for remarklint and prettier
* updated changelog

Co-authored-by: Nikita Manovich <nikita.manovich@intel.com>
5 years ago
Vitaliy Nishukov 7512fd6883
Reformatted (#2349) 5 years ago
abdullahrkw abf9814bc1
Dockercompose version update 2.3 --> 3.3 (#2235)
* updating dockercompose from 2.3 to 3.3

* adding changelog

* updating version in ci

* updating network mode docker-compose.ci

* updating version in components/serverless/docker-compose
5 years ago
Dmitry Agapov f2c84a2653
Nuclio as a plugin in CVAT, improved system to check installed plugins (#2192)
* allow to run cvat without nuclio

* fix new line

* fix comments

* Updated core version

* refactoring

* minor refactoring, fixed eslint issues, added documentation to cvat-core, updated ui version, updated changelog

* move plugins to serverViewSet

Co-authored-by: Boris Sekachev <boris.sekachev@yandex.ru>
5 years ago
Andrey Zhavoronkov d6ca864d51
Added instructions how to deploy CVAT behind a proxy (#2009)
* added deploy behind a proxy instructions

* fix

* updated toc

* fixed typo
6 years ago
Nikita Manovich e7585b8ce9
DL models as serverless functions (#1767)
* Initial experiments with nuclio

* Update nuclio prototype

* Improve nuclio prototype for dextr.

* Dummy lambda manager

* OpenFaaS prototype (dextr.bin and dextr.xml are empty).

* Moved openfaas prototype.

* Add comments

* Add serializers and HLD for lambda_manager

* Initial version of Mask RCNN (without debugging)

* Initial version for faster_rcnn_inception_v2_coco

* Fix faster_rcnn_inception_v2_coco

* Implemented mask_rcnn_inception_resnet_v2_atrous_coco

* Implemented yolo detector as a lambda function

* Removed dextr app.

* Added types for each function (detector and interactor)

* Initial version of lambda_manager.

* Implement a couple of methods for lambda:

GET /api/v1/lambda/functions
GET /api/v1/lambda/functions/public.dextr

* First working version of dextr serverless function

* First version of dextr which works in UI.

* Modify omz.public.faster_rcnn_inception_v2_coco

- image decoding
- restart policy always for the function

* Improve omz.public.mask_rcnn_inception_resnet_v2_atrous_coco

* Improve omz.public.yolo-v3-tf function

* Implemented the initial version of requests for lambda manager.

* First working version of POST /api/v1/lambda/requests

* Updated specification of function.yaml (added labels and used annotations section).

* Added health check for containers (nuclio dashboard feature)

* Read labels spec from function.yaml.

* Added settings for NUCLIO

* Fixed a couple of typos. Now it works in most cases.

* Remove Plugin REST API

* Remove tf_annotation app (it will be replaced by serverless function)

* Remove tf_annotation and cuda components

* Cleanup docs and Dockerfile from CUDA component.

* Just renamed directories inside serverless

* Remove redundant files and code

* Remove redundant files.

* Remove outdated files

* Remove outdated code

* Delete reid app and add draft of serverless function for reid.

* Model list in UI.

* Fixed the framework name (got it from lambda function).

* Add maxRequestBodySize for functions, remove redundant code from UI for auto_annotation.

* Update view of models page.

* Unblock mapping for "primary" models.

* Implement cleanup flag for lambda/requests and labeling mapping for functions.

* Implement protection from running multiple jobs for the same task.

* Fix invocation of functions in docker container.

* Fix Dockerfile.ci

* Remove unused files from lambda_manager

* Fix codacy warnings

* Fix codacy issues.

* Fix codacy warnings

* Implement progress and cancel (aka delete) operation.

* Send annotations in batch.

* Fix UI. Now it can retrieve information about inference requests in progress.

* Update CHANGELOG.md

* Update cvat-ui version.

* Update nuclio version.

* Implement serverless/tensorflow/faster_rcnn_inception_v2_coco

* Add information how to install nuclio platform and run serverless functions.

* Add installation instructions for serverless functions.

* Update OpenVINO files which are responsible for loading network

* relocated functions

* Update dextr function.

* Update faster_rcnn function from omz

* Fix OpenVINO Mask-RCNN

* Fix YOLO v3 serverless function.

* Dummy serverless functions for a couple of more OpenVINO models.

* Protected lambda manager views by correct permissions.

* Fix name of Faster RCNN from Tensorflow.

* Implement Mask RCNN via Tensorflow serverless function.

* Minor client changes (#1847)

* Minor client changes

* Removed extra code

* Add reid serverless function (no support in lambda manager).

* Fix contribution guide.

* Fix person-reidentification-retail-300 and implement text-detection-0004

* Add semantic-segmentation-adas-0001

* Moving model management to cvat-core (#1905)

* Squached changes

* Removed extra line

* Remove duplicated files for OpenVINO serverless functions.

* Updated CHANGELOG.md

* Remove outdated code.

* Running dextr via lambda manager (#1912)

* Deleted outdated migration.

* Add name for DEXTR function.

* Fix restart policy for serverless functions.

* Fix openvino serverless functions for images with alpha channel

* Add more tensorflow serverless functions into deploy.sh

* Use ID instead of name for DEXTR (#1926)

* Update DEXTR function

* Added source "auto" inside lambda manager for automatic annotation.

* Customize payload (depends on type of lambda function).

* First working version of REID (Server only).

* Fix codacy warnings

* Avoid exception during migration (workaround)

File "/usr/local/lib/python3.5/dist-packages/django/db/utils.py", line 89, in __exit__
    raise dj_exc_value.with_traceback(traceback) from exc_value
  File "/usr/local/lib/python3.5/dist-packages/django/db/backends/utils.py", line 84, in _execute
    return self.cursor.execute(sql, params)
django.db.utils.ProgrammingError: table "engine_pluginoption" does not exist

* Add siammask serverless function (it doesn't work, need to serialize state)

* Run ReID from UI (#1949)

* Removed reid route in installation.md

* Fix a command to get lena image in CONTRIBUTION guide.

* Fix typo and crash in case a polygon is a line.

Co-authored-by: Boris Sekachev <40690378+bsekachev@users.noreply.github.com>
6 years ago
Andrey Zhavoronkov b706546435
Added clamav integration (#1712)
* added clamav integration

* updated license headers and changelog
6 years ago
Rush Tehrani 3cb1f52bc1
Add environment variables for Redis and Postgres hosts (#1641)
* Update to support additional env vars

- Added environment variables for:
  - Redis Host
  - Postgres Host
- Change `POSTGRES_PASSWORD` => `CVAT_POSTGRES_PASSWORD` to avoid collision with other scripts.

* Using ENV vars in supervisord.conf

* Fixing ENV vars.

* add env vars to docker-compose.yml

* merge supervisord.conf

* update docker-compose env var values

* Update CHANGELOG.md

Co-authored-by: Aleksandr Melnikov <aleksandr@onepanel.io>
Co-authored-by: Nikita Manovich <40690625+nmanovic@users.noreply.github.com>
6 years ago
Andrey Zhavoronkov 0dae5def6b
Az/cvat proxy (#1177)
* added nginx proxy

* removed unnecessary port configuration & build arg

* updated installation guide
6 years ago
Andrey Zhavoronkov 538da9fe0f
Fix postgres startup. 6 years ago
Nikita Manovich a5c3da1235
Cleanup Dockerfiles for CVAT (#1060)
* Replaced wget by curl

* Moved CI stuff into Dockerfile.ci

* Use docker-compose to run commnands inside docker (need environment variables)

* Added patool again (to support different archive formats)

* Roll back tensorflow version: 1.15 -> 1.13.1

Fixed https://github.com/opencv/cvat/issues/982
Fixed https://github.com/opencv/cvat/issues/1017

* datumaro install tensorflow 2.x now. It breaks automatic annotation
using TF.

* Follow redirects in curl (auto_segmentation)
6 years ago
a-andre 629b10a3db Update docker base images (#950)
Don't fix minor/patch version to get security updates and bug fixes.
6 years ago
Boris Sekachev 171a9202ed React & Antd: Dashboard migration (#892)
* Removed old dashboard
* Getting all users
* Updated changelog
* Reimplemented login decorator
* Implicit host, scheme in docker-compose
* Fixed issue with pagination
* Implicit page size parameter for tasks
* Fixed linkedin icon, added links to tasks in notifications
* Configurable method for check plugin
6 years ago
Boris Sekachev 693e32e867 Configurable REST for UI, minor improvements (#880) 6 years ago
Reza Malek d99140a0fb Auto segmentation using Mask_RCNN (#767) 6 years ago
Boris Sekachev 5f511b7543 User interface with React and antd (#785)
* Dump & refactoring
* Upload annotations, cvat-core from sources
* Added download icon
* Added icon
6 years ago
RS Nikhil Krishna 4361bc548c Added `restart` tag to docker-compose for `cvat_ui` (#789) 6 years ago
Boris Sekachev 695fc37924 User interface with react and antd (#755)
* Login page, router
* Registration
* Tasks view
6 years ago
Nikita Manovich 8359db3580
cvat-ui in docker (serve using nginx) (#658) 7 years ago
Andrey Zhavoronkov fbae6bbdcb added settings for setup timezone (#661)
deleting shapes triggers setting updated date field as other
actions(create & update)
7 years ago
Naval Chand 7e76695465 Auto annotation (#660)
* Added missing import
* Added OPENVINO_TOOLKIT param in docker-compose.yml for auto annotation
7 years ago
Andrey Zhavoronkov 746cffb476 Model manager for DL models to preannotate images (#289) 7 years ago
Boris Sekachev 23b6b54137 Git application (#184) 7 years ago