NCAR / ucomp-pipeline

Data processing pipeline for UCoMP
Other
6 stars 3 forks source link

Calculate software ID #37

Open mgalloy opened 2 years ago

mgalloy commented 2 years ago

The level 0 data have the following comment for OBSSWID:

OBSSWID = '1.0.6'              / TODO calculate  software id.
bberkeyU commented 2 years ago

I am still not sure how to properly calculate a software version.

mgalloy commented 2 years ago

So when you update, you will have to remember to change the version manually?

Maybe just change the comment then?

bberkeyU commented 1 year ago

Implementation will need to wait until we get UCoMP back.

The plan is to track the current OBSSWID within the instrument_config.ini With a format of MAJOR.MINOR.POINT values. Code authors will manually increment the major and minor ID values. With MAJOR software changes representing large architecture changes for the UCoMP data products. I expect this will not increment. The MINOR changes will be updated with a feature change. And the POINT tracks any changes to the git repository hash.

The instrument_config.ini will get 2 new entries an OBSSWID string and a GITHASH string. New code will be written to run git rev-parse HEAD on the LabVIEW code repository. If the result does not match the GITHASH, the OBSSWID POINT value will be incremented by 1, and the GITHASH value will be replaced with the new HASH.

When adding new features, Labview code authors shall manually edit the instrument_config.ini OBSSWID value with the MINOR value incremented by 1 and the POINT value reset to 0.

bberkeyU commented 1 year ago

Should the header comment be updated to: "data collection software ID" to match the comment in the UCoMP headers v0.3.4 google doc?

bberkeyU commented 2 weeks ago

Now, planning to run the "svn info --show-item revision" info command when the real-time code starts up and use that as the ID.

Currently, revision numbers are 5-digit numbers, for example, 24179.

This would look like: OBSSWID = '24179' / Real-time software version from subversion.