Date
Call-in Information
Time: 10:00 am, Eastern Time (New York, GMT-04:00)
To join the online meeting:
https://lyrasis.zoom.us/j/84378615572?pwd=bGUxSjlyRTdjOGl5U1B6L0Yva3RQdz09
Meeting ID: 843 7861 5572
Passcode: 556561
One tap mobile
+16699006833,,84378615572#,,,,*556561# US (San Jose)
+19292056099,,84378615572#,,,,*556561# US (New York)Dial by your location
+1 669 900 6833 US (San Jose)
+1 929 205 6099 US (New York)
+1 253 215 8782 US (Tacoma)
+1 301 715 8592 US (Washington DC)
+1 312 626 6799 US (Chicago)
+1 346 248 7799 US (Houston)
877 853 5257 US Toll-free
888 475 4499 US Toll-free
Meeting ID: 843 7861 5572
Passcode: 556561
Find your local number: https://lyrasis.zoom.us/u/kerqtGDrJ4
Slack
- https://vivo-project.slack.com
- Self-register at: http://bit.ly/vivo-slack
Attendees
Resources
Agenda
Goals:
- Surface any fundamental issues
Sprint logistics / scheduling
- Daily stand-up report in Slack - #dynamic-api-sprint-may#i18n-sep-2022 channel
- A bi-daily meeting (Monday, Wednesday, Friday) at 10am Eastern Time (4pm CEST)
- Tools and resources
- Branches
- Test datasets
- Integration tests
- Development processes
- Dev environment... please take as first task to establish this
Tickets - https://github.com/orgs/vivo-project/projects/24/views/1
Documentation - VIVO Dynamic API
- Tracks
- Ontology
- RDF representation of dynamic actions and resourceAPIs
- Binding
- Binding to Java objects representation
- Execution
- Execution of a dynamic action
- RCP Endpoint
- REST Endpoint
- Security
- Definition of dynamic action roles
- Authentication (endpoint and UI)
- Authorization
- JWT
- Do we need OAuth2 or OpenID Connect ???
- Validation
- syntax,
- over the ontology,
- generic SHACL rules for all dynamic actions
- custom SHACL rules for specific dynamic actions ???
UI for running a dynamic action - Angular & Angular Material
- I would recommend against using a openapi specification generator
- it likely does not take into consideration angular universal for SEO, central state management, or i18n
- it is not likely to be a long lived dependency, popular, or actually work well with the dynamism of custom actions
choose between the server side module (both express and angular universal) - https://angular.io/guide/universal
- https://github.com/nestjs/ng-universal
- consider a central state management up front
- choose i18n library (important to know whether we want runtime or build time i18n)
- adopt a style guide and have it enforced using linting
- have github action check code styles
- protect main branch against style guide violations
- incorporate best practices and have test coverage in initial commit
- have github action that performs code coverage
- protect main branch for code coverage decrease
- CRUD operations for custom actions
- UI for management of custom actions
- Exploitation
Some notes regarding angular from William Welling .
Slack stand-up template
Panel |
---|
[VIVO Dynamic API Standup] |
Notes
...
Discussion about approach for implementation of authorization. Conclusion was that we should create a separate ontology for Vitro AuthZ solution. One, or two person should work on designing it before we implement that into Dynamic API. Georgy thinks this is a big issue deserving a complete sprint, and we need a quick and simple solution for forthcoming sprint. That solution might be that users with role Administrator can modify (create, update, delete) dynamic actions, while a role for execution of a dynamic action is defined by using hasRole object property in the Action class.
...