Skip to content

Commit

Permalink
base: add OPCUA and ether_ip IOC
Browse files Browse the repository at this point in the history
- The opcua.sh file was created for installing IOC Opcua.
  We decided to create a separate file, because the repository is not a standard
  github archive and it was necessary to create a symbolic link for the libraries.
- The ioc ether_ip was created in install_module.sh.
- Both IOCs were built in the modules directory, because there are other IOCs
  that depend on their binaries and libraries.
  • Loading branch information
guirodrigueslima committed Apr 18, 2024
1 parent c80c496 commit a0b7476
Show file tree
Hide file tree
Showing 8 changed files with 32 additions and 2 deletions.
3 changes: 2 additions & 1 deletion CHANGES.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,8 @@ need to update if they noticed missing features.
https://github.com/cnpem/epics-in-docker/pull/42
* ci: add reusable job for IOC images. by @ericonr in
https://github.com/cnpem/epics-in-docker/pull/49
* base: new functionality for installing iocs. by @guirodrigueslima in
* base: new functionality for installing iocs.
base: add OPCUA and ether_ip IOC. by @guirodrigueslima in
https://github.com/cnpem/epics-in-docker/pull/57

### Bug fixes
Expand Down
3 changes: 3 additions & 0 deletions base/.env
Original file line number Diff line number Diff line change
Expand Up @@ -23,3 +23,6 @@ MOTOR_VERSION=R7-3-1
PMAC_VERSION=2-6-1

LIBSSCPIMEGA_VERSION=fb8acf533a7c01b5266bf32d60d1a5f923e19523

OPCUA_VERSION=0.9.4
ETHER_IP_VERSION=ether_ip-3-3
2 changes: 2 additions & 0 deletions base/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -65,6 +65,8 @@ WORKDIR ${EPICS_MODULES_PATH}
COPY caputlog-waveform-fix.patch .
COPY install_modules.sh .
RUN ./install_modules.sh
COPY install_opcua.sh .
RUN ./install_opcua.sh

COPY backport-adsupport-nanohttp.patch .
COPY install_area_detector.sh .
Expand Down
3 changes: 2 additions & 1 deletion base/docker-compose.yml
Original file line number Diff line number Diff line change
Expand Up @@ -29,4 +29,5 @@ services:
PMAC_VERSION: ${PMAC_VERSION}
LIBSSCPIMEGA_VERSION: ${LIBSSCPIMEGA_VERSION}
RETOOLS_VERSION: ${RETOOLS_VERSION}

OPCUA_VERSION: ${OPCUA_VERSION}
ETHER_IP_VERSION: ${ETHER_IP_VERSION}
4 changes: 4 additions & 0 deletions base/install_modules.sh
Original file line number Diff line number Diff line change
Expand Up @@ -61,3 +61,7 @@ EPICS_BASE
install_from_github brunoseivam retools RETOOLS $RETOOLS_VERSION "
EPICS_BASE
"

install_from_github -i epics-modules ether_ip ETHER_IP $ETHER_IP_VERSION "
EPICS_BASE
"
15 changes: 15 additions & 0 deletions base/install_opcua.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
#!/usr/bin/env bash

set -ex

. /opt/epics/install-functions.sh

opcua_release_url=https://github.com/epics-modules/opcua/releases/download/v${OPCUA_VERSION}
opcua_release_file=IOC_opcua-${OPCUA_VERSION}_Base-${EPICS_BASE_VERSION}_debian${DEBIAN_VERSION%.*}.tar.gz
lnls-get-n-unpack -l $opcua_release_url/$opcua_release_file
mv binaryOpcuaIoc opcua
install_module -i opcua OPCUA "
EPICS_BASE
"
EPICS_HOST_ARCH=`perl ${EPICS_BASE_PATH}/lib/perl/EpicsHostArch.pl`
ln -s ${EPICS_MODULES_PATH}/opcua/{opcuaIocApp/libopcua.so.0.9,lib/${EPICS_HOST_ARCH}/libopcua.so}
2 changes: 2 additions & 0 deletions base/musl/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -51,6 +51,8 @@ ARG RECCASTER_VERSION
ARG IPAC_VERSION
ARG CAPUTLOG_VERSION
ARG RETOOLS_VERSION
ARG OPCUA_VERSION
ARG ETHER_IP_VERSION

WORKDIR ${EPICS_MODULES_PATH}
COPY caputlog-waveform-fix.patch .
Expand Down
2 changes: 2 additions & 0 deletions base/musl/docker-compose.yml
Original file line number Diff line number Diff line change
Expand Up @@ -24,3 +24,5 @@ services:
IPAC_VERSION: ${IPAC_VERSION}
CAPUTLOG_VERSION: ${CAPUTLOG_VERSION}
RETOOLS_VERSION: ${RETOOLS_VERSION}
OPCUA_VERSION: ${OPCUA_VERSION}
ETHER_IP_VERSION: ${ETHER_IP_VERSION}

0 comments on commit a0b7476

Please sign in to comment.