Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Extend uploading/artifact management support in efsity #79

Closed
pld opened this issue Nov 7, 2023 · 3 comments
Closed

Extend uploading/artifact management support in efsity #79

pld opened this issue Nov 7, 2023 · 3 comments
Assignees
Labels
Blocked Something is blocked efsity FCT features Enhancement New feature or request

Comments

@pld
Copy link
Member

pld commented Nov 7, 2023

Depends on/blocked by v1

Transaction support

Ideally when publishing the artifacts, all the individual upload POST requests should succeed or fail entirely for a run. This makes sense because we tag the resources on the server with the same version value.

The easiest way to achieve this would be to leverage BATCH posting to the HAPI FHIR server which supports transactions natively with Bundle type BATCH . See https://build.fhir.org/bundle.html

Properties Management

  • In v1 one needs to pass an Access token with the --access-token flag when running the script for authentication
  • Implementation of OAuth2 support for token management will add these properties
    • CLIENT_ID
    • CLIENT_SECRET
    • CLIENT_SCOPE

Publishing state management

  • For projects that do not follow the recommended file structure documented here, we could have a map of non standard path folders to internally map the resource folders to custom locations
    • key - file_structure_map
    • value - json e.g.
   {
      "file_structure_map": { 
           "questionnaires" : "/my/custom/path/for/questionnaires" ,
           "plandefinitions" : "/my/custom/path/for/plandefinitions" 
       }
    }

Notes

Implementation Notes

  • The .efsity folder should always be versioned on Github (i.e. under the fhir-resources repo project)
  • If the latest contents of the .efsity folder are not pushed, someone else can inadvertently overwrite those changes
  • Properties can be provided via CLI or via the Dot Env file. CLI flags take precedence
  • Time stamps to be in ISO 8601 format see https://www.iso.org/iso-8601-date-and-time-format.html

Resources

@pld pld added Enhancement New feature or request efsity FCT features Blocked Something is blocked labels Nov 7, 2023
@pld
Copy link
Member Author

pld commented Nov 7, 2023

@ndegwamartin I pulled your v2 from #29 into this new issue

@Wambere Wambere self-assigned this Dec 11, 2023
@Wambere Wambere mentioned this issue Jan 22, 2024
2 tasks
@Wambere
Copy link
Contributor

Wambere commented Jan 22, 2024

Transaction support and publishing state management already handled in #86
File/folder structure validation already handled in #84

@Wambere
Copy link
Contributor

Wambere commented Jan 23, 2024

Completed by #111

@Wambere Wambere closed this as completed Jan 23, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Blocked Something is blocked efsity FCT features Enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

2 participants