You are viewing an old version of this page. View the current version.
Compare with Current
View Page History
Version 1
Current »
The SOTHOOK is a combination of two webhooks that are required for yuuvis® client as reference implementation for proper handling of an object's lifecycle.
Characteristics
Service Name | sothook |
---|
Port Range | 10779 |
---|
Profiles | prod |
---|
Helm Chart | client |
---|
Public API | - |
---|
Function
Handling of secondary object types in yuuvis® client as reference implementation.
Configuration
apiVersion: v1
kind: Service
metadata:
labels:
app: yuuvis
yuuvis: "true"
name: sothook
name: sothook
namespace: yuuvis
spec:
ports:
- name: http
port: 80
protocol: TCP
targetPort: 10779
selector:
name: sothook
type: ClusterI
apiVersion: apps/v1
kind: Deployment
metadata:
namespace: yuuvis
labels:
app: yuuvis
name: sothook
name: sothook
spec:
replicas: 1
selector:
matchLabels:
name: sothook
template:
metadata:
labels:
app: yuuvis
name: sothook
spec:
initContainers:
- name: init-sothook
image: busybox
command: ["sh", "-c", "until wget -q --spider http://configservice/manage/health; do echo waiting for configservice; sleep 11; done;"]
imagePullPolicy: IfNotPresent
containers:
- name: sothook
image: docker.yuuvis.org/yuuvis/sandbox/sot-hook:1.0.0-RC01
imagePullPolicy: Always
env:
- name: JAVA_OPTS
value: -Xmx256m
- name: SPRING_PROFILES_ACTIVE
value: prod,kubernetes
- name: SPRING_CLOUD_CONFIG_URI
value: "http://configservice/config"
ports:
- containerPort: 10779
restartPolicy: Always
imagePullSecrets:
- name: flexsecret
In the cluster, the "app/clientsystem/systemHookConfiguration.json
" file must be adapted in the CONFIGSERVICE - in the webhook
array, these two entries must be added:
{
"enable": true,
"predicate": "spel:T(java.util.List).of(100,101).contains(options['action']) && properties['system:secondaryObjectTypeIds'] != null && properties['system:secondaryObjectTypeIds']['value'].contains('appClientsystem:leadingType')",
"type": "dms.request.objects.upsert.database-before",
"url": "http://sothook/api/dms/request/import/databasebefore",
"useDiscovery": true
},
{
"enable": true,
"predicate": "spel:T(java.util.List).of(300).contains(options['action']) && properties['system:secondaryObjectTypeIds'] != null && properties['system:secondaryObjectTypeIds']['value'].contains('appClientsystem:leadingType')",
"type": "dms.request.objects.upsert.database-before",
"url": "http://sothook/api/dms/request/updatemetadata/databasebefore",
"useDiscovery": true
}
Deprecated (valid up to version 2022 Summer): In the cluster, the "system/systemHookConfiguration.json
" file must be adapted in the CONFIGSERVICE - in the webhook
array, these two entries must be added:
{
"enable": true,
"predicate": "spel:(options==null || options['currentVersion']==null)",
"type": "dms.request.import.storage.before",
"url": "http://sothook/api/dms/request/import",
"useDiscovery": true
},
{
"enable": true,
"predicate": "spel:options!=null && options['currentVersion']!=null && options['currentVersion']['properties']['system:secondaryObjectTypeIds'] != null && options['currentVersion']['properties']['system:secondaryObjectTypeIds']['value'].contains('appClientsystem:leadingType')",
"type": "dms.request.update.metadata",
"url": "http://sothook/api/dms/request/update/metadata",
"useDiscovery": true
}