epics_gateway

pdk
Puppet module for EPICS Channel Access Gatway

3,562 downloads

907 latest version

5.0 quality score

Version information

  • 1.1.2 (latest)
  • 1.1.1
  • 1.1.0
released Dec 10th 2020
This version is compatible with:
  • Puppet Enterprise 2019.8.x, 2019.7.x, 2019.5.x, 2019.4.x, 2019.3.x, 2019.2.x, 2019.1.x, 2019.0.x, 2018.1.x
  • Puppet >= 5.5.0 < 7.0.0
  • Debian

Start using this module

  • r10k or Code Manager
  • Bolt
  • Manual installation
  • Direct download

Add this module to your Puppetfile:

mod 'mark0n-epics_gateway', '1.1.2'
Learn more about managing modules with a Puppetfile

Add this module to your Bolt project:

bolt module add mark0n-epics_gateway
Learn more about using this module with an existing project

Manually install this module globally with Puppet module tool:

puppet module install mark0n-epics_gateway --version 1.1.2

Direct download is not typically how you would use a Puppet module to manage your infrastructure, but you may want to download the module in order to inspect the code.

Download

Documentation

mark0n/epics_gateway — version 1.1.2 Dec 10th 2020

This Puppet module installs and configures the EPICS Channel Access Gateway. The gateway is run in 'procServ' to ease maintenance. The gateway can be started/stopped as a systemd service.

Note that there is a non-instance specific part which is only needed once for each host acting as a Channel Access gateway and an instance-specific part which is needed for each instance of the gateway. The general part can be found in class epics_gateway whereas epics_gateway::gateway needs to be instantiated for each gateway instance that should be run on the managed machine.

Examples that require multiple gateway instances on a single machine include:

a) A gateway machine providing access to an accelerator network as well as to an experimental network from the office network (three networks). b) A gateway machine that provides access back and forth between an accelerator network and an experimental network (thus acting as a forward and reverse gateway).

Examples

Make PVs from 192.168.1.xxx and 192.168.2.xxx available on 192.168.3.xxx:

include 'epics_gateway'

vcsrepo { '/etc/epics/cagateway-192.168.1.xxx':
  ...
}

vcsrepo { '/etc/epics/cagateway-192.168.2.xxx':
  ...
}

epics_gateway::gateway { '192.168.1.xxx':
  server_ip => '192.168.3.1',
  client_ip => '192.168.1.255',
  require   => Package['ioclogserver'],
  subscribe => Vcsrepo['/etc/epics/cagateway-192.168.1.xxx'],
}

epics_gateway::gateway { '192.168.2.xxx':
  server_ip => '192.168.3.1',
  client_ip => '192.168.2.255',
  require   => Package['ioclogserver'],
  subscribe => Vcsrepo['/etc/epics/cagateway-192.168.2.xxx'],
}

Contact

Author: Martin Konrad