Deploy updates to XINA
InDevelopers ordermust fordeploy DraMS specific updates to the DraMS XINA instance to functionensure asproper expected,operation. developersThese needupdates serve two main purposes:
- Update XINA's DraMS mnemonic definitions
- Update the tooling required to
deployextractvariousdata from the archives
The updates tocome XINA to keep it in sync.
DraMS XINA has thefrom following Git repo dependencies:
-
dramsgse
-
apps/linux/struct_extract- Extracts and converts the telemetry data from therawpacket archives -
tmdef/-Contains the telemetryTelemetry definitionsthat areused bystruct_extractto decode and convert the telemetry data. The telemetry definition files are also converted to XINA's Mnemonic Definition formatandthenimported into XINA.imported.
-
-
699util
Contains miningMining scripts that extract additional data from the raw packet archives such as markers and message logs.
These repositories are not directly cloned on XINA. Instead, snapshots of the repositories are updated to AWS S3. Each repo has a "upload_s3.sh" script that can be used to upload the repo to the proper location. Usage requires confguring your aws ssm credentials.
The following scenarios require new versions to be uploaded to S3 and then deployed to drams.xina.io. Deploymeny to drams.xina.io isare performed using the AWS SSM deploy script.
- Changes to the DraMS Telemetry Definitions (i.e.
DRAMS_TM_Database.txtor any patch files) - Changes to
struct_extract. This may include:- DraMS decoder changes - DraMS decoders are implemented as static plugins, so changes require a new version of
struct_extractto be released and deployed. - General
struct_extractchanges -
gselibchanges (or related) that affect all data processing - Changes to
dramslib(or other related code) that impacts how DraMS data is extracted, converted, or processed
- DraMS decoder changes - DraMS decoders are implemented as static plugins, so changes require a new version of
- 699util:
-
c699util- this C++ SWIG library is used by the 699util Python tools which is used to perform mission specific mining
-
Steps:
- In Ubuntu
VM,VM:buildBuildnewestgsw-cppversion.master. - Build appimage of
struct_extract.
./scripts/makestructextract.sh
- Add
struct_extracttodramsgserepo. - source labcode/699util/devenv.sh
- In gsw-
cpp,cpp:
cd c699util,./copy_into_699util.py.
- Perform same process on Mac.
- Tag version of 699util.
- upload_s3.sh
- In dramsgse, upload_s3.sh.
- Generate XINA Mnem Defs from dramsgse/tmdef tmdbs.
- Import into XINA.
- Deploy changes to drams.xina.io using DeployStructGse.