Merge pull request #209 from lblod/feature/mandates-producer

Add delta producer for worship posts
This commit is contained in:
Claire Lovisa
2023-01-09 10:38:16 +01:00
committed by GitHub
5 changed files with 160 additions and 0 deletions

View File

@@ -34,5 +34,17 @@
"targetGraph": "http://redpencil.data.gift/id/deltas/producer/public",
"fileBaseName": "dump-public",
"compression": false
},
"http://redpencil.data.gift/id/jobs/concept/JobOperation/deltas/deltaDumpFileCreation/worship-posts" : {
"dcatDataSetSubject": "http://data.lblod.info/datasets/delta-producer/dumps/WorshipPostsCacheGraphDump",
"targetGraph": "http://redpencil.data.gift/id/deltas/producer/worship-posts",
"fileBaseName": "dump-worship-posts",
"compression": false
},
"http://redpencil.data.gift/id/jobs/concept/JobOperation/deltas/initialPublicationGraphSyncing/worship-posts" : {
"dcatDataSetSubject": "http://data.lblod.info/datasets/delta-producer/dumps/WorshipPostsCacheGraphDump",
"targetGraph": "http://redpencil.data.gift/id/deltas/producer/worship-posts",
"fileBaseName": "dump-worship-posts",
"compression": false
}
}

View File

@@ -0,0 +1,47 @@
{
"export": [
{
"type": "http://data.vlaanderen.be/ns/mandaat#Mandaat",
"graphsFilter": [
"http://mu.semte.ch/graphs/organisatieportaal"
],
"properties": [
"http://mu.semte.ch/vocabularies/core/uuid",
"http://www.w3.org/ns/org#role"
],
"additionalFilter": "?orgaan <http://www.w3.org/ns/org#hasPost> ?subject ; <https://data.vlaanderen.be/ns/generiek#isTijdspecialisatieVan>/<http://data.vlaanderen.be/ns/besluit#bestuurt> ?bestuurseenheid . ?bestuurseenheid a ?type. FILTER (?type IN (<http://data.lblod.info/vocabularies/erediensten/CentraalBestuurVanDeEredienst>, <http://data.lblod.info/vocabularies/erediensten/BestuurVanDeEredienst>))"
},
{
"type": "http://data.lblod.info/vocabularies/erediensten/BestuurVanDeEredienst",
"strictTypeExport": "true",
"graphsFilter": [
"http://mu.semte.ch/graphs/organisatieportaal"
],
"properties": [
"http://data.lblod.info/vocabularies/erediensten/wordtBediendDoor"
]
},
{
"type": "http://data.vlaanderen.be/ns/besluit#Bestuursorgaan",
"strictTypeExport": "true",
"graphsFilter": [
"http://mu.semte.ch/graphs/organisatieportaal"
],
"properties": [
"http://www.w3.org/ns/org#hasPost"
],
"additionalFilter": "?subject <https://data.vlaanderen.be/ns/generiek#isTijdspecialisatieVan>/<http://data.vlaanderen.be/ns/besluit#bestuurt> ?bestuurseenheid . ?bestuurseenheid a ?type. FILTER (?type IN (<http://data.lblod.info/vocabularies/erediensten/CentraalBestuurVanDeEredienst>, <http://data.lblod.info/vocabularies/erediensten/BestuurVanDeEredienst>))"
},
{
"type": "http://data.lblod.info/vocabularies/erediensten/PositieBedienaar",
"graphsFilter": [
"http://mu.semte.ch/graphs/organisatieportaal"
],
"properties": [
"http://mu.semte.ch/vocabularies/core/uuid",
"http://www.w3.org/ns/org#role",
"http://data.lblod.info/vocabularies/erediensten/functie"
]
}
]
}

View File

@@ -156,6 +156,41 @@ export default [
optOutMuScopeIds: [ "http://redpencil.data.gift/id/concept/muScope/deltas/initialSync" ]
}
},
{
match: {
},
callback: {
url: 'http://delta-producer-pub-graph-maintainer-worship-posts/delta',
method: 'POST'
},
options: {
resourceFormat: 'v0.0.1',
gracePeriod: 1000,
ignoreFromSelf: true,
optOutMuScopeIds: [
"http://redpencil.data.gift/id/concept/muScope/deltas/initialSync",
"http://redpencil.data.gift/id/concept/muScope/deltas/publicationGraphMaintenance"
]
}
},
{
match: {
graph: {
type: 'uri',
value: 'http://redpencil.data.gift/id/deltas/producer/worship-posts'
}
},
callback: {
url: 'http://delta-producer-json-diff-publisher-worship-posts/delta',
method: 'POST'
},
options: {
resourceFormat: 'v0.0.1',
gracePeriod: 1000,
ignoreFromSelf: true,
optOutMuScopeIds: [ "http://redpencil.data.gift/id/concept/muScope/deltas/initialSync" ]
}
},
{
match: {
predicate: {

View File

@@ -71,3 +71,7 @@ services:
restart: "no"
construct-administrative-unit-relationships:
restart: "no"
delta-producer-bg-jobs-initiator-worship-posts:
restart: "no"
delta-producer-pub-graph-maintainer-worship-posts:
restart: "no"

View File

@@ -404,6 +404,68 @@ services:
# DELTA PUBLIC INFORMATION: END
################################################################################
################################################################################
# DELTA WORSHIP POSTS: START
################################################################################
delta-producer-bg-jobs-initiator-worship-posts:
image: lblod/delta-producer-background-jobs-initiator:0.3.1
environment:
JOBS_GRAPH: "http://mu.semte.ch/graphs/organisatieportaal"
DUMP_FILE_CREATION_JOB_OPERATION: "http://redpencil.data.gift/id/jobs/concept/JobOperation/deltas/deltaDumpFileCreation/worship-posts"
INITIAL_PUBLICATION_GRAPH_SYNC_JOB_OPERATION: "http://redpencil.data.gift/id/jobs/concept/JobOperation/deltas/initialPublicationGraphSyncing/worship-posts"
HEALING_JOB_OPERATION: "http://redpencil.data.gift/id/jobs/concept/JobOperation/deltas/healingOperation/worship-posts"
CRON_PATTERN_DUMP_JOB: "17 */4 * * *" # At minute 17 every 4 hours
CRON_PATTERN_HEALING_JOB: "0 0 3 * * *" # everyday at 3 AM
START_INITIAL_SYNC: "false" # prefer to disable it now. We want to have feeling with how the DB acts.
labels:
- "logging=true"
links:
- db:database
restart: always
logging: *default-logging
delta-producer-pub-graph-maintainer-worship-posts:
image: lblod/delta-producer-publication-graph-maintainer:0.15.1
environment:
MAX_BODY_SIZE: "50mb"
JOBS_GRAPH: "http://mu.semte.ch/graphs/organisatieportaal"
RELATIVE_FILE_PATH: "deltas/worship-posts"
PUBLICATION_GRAPH: "http://redpencil.data.gift/id/deltas/producer/worship-posts"
HEALING_JOB_OPERATION: "http://redpencil.data.gift/id/jobs/concept/JobOperation/deltas/healingOperation/worship-posts"
INITIAL_PUBLICATION_GRAPH_SYNC_JOB_OPERATION: "http://redpencil.data.gift/id/jobs/concept/JobOperation/deltas/initialPublicationGraphSyncing/worship-posts"
QUEUE_POLL_INTERVAL: 3000
USE_VIRTUOSO_FOR_EXPENSIVE_SELECTS: "true" # some queries are just too expensive
SKIP_MU_AUTH_INITIAL_SYNC: "true"
HEALING_PATCH_GRAPH_BATCH_SIZE: 500
volumes:
- ./config/delta-producer/worship-posts:/config
- ./data/files/:/share
links:
- db:database
- triplestore:virtuoso
restart: always
logging: *default-logging
delta-producer-json-diff-publisher-worship-posts:
image: lblod/delta-producer-json-diff-file-publisher:0.2.3
environment:
MAX_BODY_SIZE: "50mb"
ERROR_GRAPH: "http://mu.semte.ch/graphs/organisatieportaal"
RELATIVE_FILE_PATH: "deltas/worship-posts"
PUBLISHER_URI: "http://data.lblod.info/services/delta-production-json-diff-file-manager/worship-posts"
PUBLICATION_GRAPH: "http://redpencil.data.gift/id/deltas/producer/worship-posts"
DELTA_INTERVAL_MS: 10000
PRETTY_PRINT_DIFF_JSON: "true"
volumes:
- ./data/files:/share
labels:
- "logging=true"
links:
- db:database
restart: always
logging: *default-logging
################################################################################
# DELTA WORSHIP POSTS: END
################################################################################
################################################################################
# DELTA CONSUMERS
################################################################################