Skip to content

Updating master#1

Open
clemenbor wants to merge 146 commits intoclemenbor:masterfrom
ispyb:master
Open

Updating master#1
clemenbor wants to merge 146 commits intoclemenbor:masterfrom
ispyb:master

Conversation

@clemenbor
Copy link
Copy Markdown
Owner

No description provided.

stufisher and others added 30 commits July 26, 2022 15:22
Co-authored-by: Maël Gaonach <mael.gaonach@esrf.fr>
Co-authored-by: Maël Gaonach <mael.gaonach@esrf.fr>
* Sync proposal, persons and laboratories

* Added sync of proteins

* Added sync of sessions

* Added sync of proteins, ProposalHasPerson and Session_has_Person

* Person session_options not taken into account when Person is related to Proposal

* Added some automatic testing for ProposalHasPerson and SessionHasPerson

* Fixed lint

* Added Pydantic PersonSessionLaboratory class

* Added sync of LabContacts

* Added option to sync Proposal by using externalId field

* Added option to sync Person by using externalId field

* Added sync of session only via externalId field

* Added sync of Protein only via externalId field

* siteId removed from Person sync logic in favor of login/externalID

* Minor fix when adding session persons

* Sync of session using either externalId or expSessionPk

* Sync of protein using externalId or acronym

* Check list of persons are unique before processing them

* Removed usage of sqlalchemy or_ in queries

* Optional laboratory eager loading for get_persons

* Added a case to update laboratory values

* Added some UserPortalSync automatic testings for updating entities

* docs: Initial documentation for User Portal Sync #127

* Changed references to the new ispyb models external package

* Remove usage of sqlcodegen generated relationships

* Add queries with relations for proposals (proposalHasPerson) and sessions (sessionHasPerson) according to ispyb-models 1.0.2

* Add permission uportal_sync to restrict the User Sync Portal endpoint

* Do not sync session comments (they are written by user or admin)

* Add uportal_sync mock permission

* Remove own_proposals and own_sessions from documentation

* Minor fix on get_sessions function

* Ignoring Protein _global field

* Separate Laboratory schema for GET and LaboratoryCreate for POST

* Person.Laboratory is now optional

* Updated laboratory schemas

* Reuse encode/decode of externalId fields

* Missed adding encode_external_id and decode_external_id util functions

* Fix query total issue when using proposalHasPerson or sessionHasPerson

* Add with_db_session pytest fixture

* Add method and payload in ApiTestInput

* Add default values for method and payload in ApiTestInput

* Move userportalsync route and add db option to disable it

* Missed removing some default payload

* Removed all_sessions

* sync_proposal returns the time it took to run as float

* Change route for sync_proposal json schema

* Change userportalsync routes to use webservice base

* Document sync_proposal responses

* Remove up_sync json schema endpoint
… (#220)

* Pin version 8.0.29 of mysql-connector-python and remove mysql-connector in setup.cfg
* Remove mysqlclient and mysql-connector from requirements.txt
+ some basic resources
* dockerfile and doc
* CI
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants