Skip to content

Publishing a Project

The following page will outline how to publish your project to the data platform.

Committing Changes

The git-drs commit command saves your changes to the local repository. Here's a brief explanation of what happens when you use git-drs commit:

  • Like git, this command bundles the staged files into a single set of changes.
  • The -m flag provides a commit message detailing the changes
  • If the commit is successful, you will see a summary of the changes logged
  • As a reminder, the files committed to git are the FHIR metadata in META/ and the file metadata entries in MANIFEST/, not the data files themselves.
  • See git-drs commit --help for more info

You can confirm all your changes have been staged and committed using git-drs status. This will ensure that your manifest data and FHIR metadata is up to date.

Pushing Changes

How to Push Changes

The git-drs push command uploads your changes to the data platform. Here's a brief explanation of what happens when you use git-drs push:

  1. Checks that all files are committed before pushing
  2. Checks that the FHIR metadata in META/ is valid
  3. Indexes the data files using the file metadata in the MANIFEST/ directory
  4. Uploads the FHIR metadata to our databases
  5. Once the job is complete:
    • Changes are available on the platform
    • Changes are available for other users to download
    • Job logs are available in the logs directory

Updating Files

When pushing data, git-drs checks the manifest (MANIFEST/ directory) to see if there are any new files to index. If no new files have been added, then the push will not go through. To update the metadata for a file that has already been pushed or update the FHIR metadata, use the --overwrite flag:

$ git-drs push --overwrite

Logging

Make sure to check the logs generated by the command.

  • If a job is successful, you will get a green success message.
  • If a job fails, you will get a red error message: look for more information in the specified logs directory.
  • The logs directory stores rolling logs, where each line is a JSON representing a single submission attempt.