Skip to content

Update objects

Update objects #5

name: Update objects
# Every day at 11:00
# on:
# schedule:
# - cron: "0 11 * * *"
on:
workflow_run:
workflows: [Update persons]
types:
- completed
jobs:
run:
runs-on: ubuntu-latest
steps:
- name: Checkout data repository
uses: actions/checkout@v4
with:
path: ./data
sparse-checkout: objects
- name: Checkout code repository
uses: actions/checkout@v4
with:
path: ./code
repository: colonial-heritage/integration-layer
- name: Install Node
uses: actions/setup-node@v4
with:
node-version: "20"
- name: Install app
run: |
cd ./code
npm install --no-progress
npx turbo run build --filter=@colonial-collections/graph-create
- name: Create graph
run: |
cd ./data
mkdir -p "$RUNNER_TEMP"
test -f ./objects/data/data.tar.zst && tar --zstd -xf ./objects/data/data.tar.zst -C "$RUNNER_TEMP"
../code/apps/graph-create/dist/cli.js create \
--resource-dir ./objects/resources \
--data-file "$RUNNER_TEMP/data.sqlite" \
--iterate-endpoint-url "${{ vars.SPARQL_ENDPOINT_URL_KG }}" \
--iterate-query-file ./objects/queries/iterate.rq \
--generate-endpoint-url "${{ vars.SPARQL_ENDPOINT_URL_KG }}" \
--generate-query-file ./objects/queries/generate.rq \
--triplydb-instance-url "${{ vars.TRIPLYDB_INSTANCE_URL }}" \
--triplydb-api-token "${{ secrets.TRIPLYDB_API_TOKEN }}" \
--triplydb-account "${{ vars.TRIPLYDB_ACCOUNT }}" \
--triplydb-dataset "${{ vars.TRIPLYDB_DATASET_SG }}" \
--triplydb-service-name "search" \
--triplydb-service-type "elasticsearch" \
--graph-name "https://data.colonialcollections.nl/objects" \
--temp-dir "$RUNNER_TEMP"
- name: Save changes
run: |
cd ./data
mkdir -p ./objects/data
test -f "$RUNNER_TEMP/data.sqlite" && tar --zstd -cf ./objects/data/data.tar.zst -C "$RUNNER_TEMP" data.sqlite
git config --global user.name "github-actions[bot]"
git config --global user.email "github-actions[bot]@users.noreply.github.com"
git add .
git commit --quiet -a -m "Save changes" || true
git push --force -u origin