Skip to content

Define customized alarms configurations - Server Side #8780

@Chsudeepta

Description

@Chsudeepta

Issue Description

As an instrument scientist or IBEX user, I want to have greater control over alarms. Today alarms are pre-configured, always enabled, and there is no possibility to configure or customize.
This ticket describes the server changes needed to facilitate the parent ticket.

How & Where?

The alarms definition is driven by the file Instrument.xml generated by the code in \Instrument\Apps\EPICS\CSS\master\AlarmServer\make_alarm_config.py. This code is eventually triggered by the block server. Right now it has logic to set some defaults, we need to alter the logic here to read back the newly persisted values generated by the GUI changes and produce the Instrument.xml accordingly. Below is the prescribed structure (we keep the description field blank for the time being):

Image

Reproducible (Yes/No)?

Not Applicable. This is a new feature.

Additional Information

If nothing is configured using the GUI, the file should be created as it is today.

See our Git Workflow.

Acceptance Criteria

  • The Instrument.xml should introduce the new elements based on the values configured on the GUI.
  • Values provided in the section is persisted, and shown again when the Edit Blocks screen is opened.
  • Instrument.xml is changed/regenerated with the new changes matching the schema already shown above, every time the alarms setting is changed from the GUI.
  • If nothing has been configured with the new GUI changes, the old settings should continue to work.
  • Python code changes should pass the linters defined.

...

How to Review

  • The code changes should satisfy the expected code standards.
  • All the system tests should pass.
  • The Instrument.xml should be generated with the configured values on the new elements described above.

To the reviewer: Make sure to update submodules!

Metadata

Metadata

Assignees

Labels

Type

No type

Projects

Status

Review

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions