-
Notifications
You must be signed in to change notification settings - Fork 2
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
feat: allow running updater as one-off command (#143)
* feat: allow running updater as one-off job * test: add integration test for running image as command * refactor: deduplicate entity seeding * docs: add changelog
- Loading branch information
Showing
11 changed files
with
146 additions
and
36 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,63 @@ | ||
name: Docker test run as command | ||
|
||
on: | ||
push: | ||
branches: | ||
- 'main' | ||
tags: | ||
- '*' | ||
pull_request: | ||
|
||
jobs: | ||
docker-test: | ||
env: | ||
COMPOSE_ARGS: -f docker-compose.yml -f docker-compose.ci.command.yml | ||
runs-on: ubuntu-latest | ||
steps: | ||
- name: Checkout | ||
uses: actions/checkout@v3 | ||
|
||
- name: docker-compose up | ||
run: docker-compose ${{ env.COMPOSE_ARGS }} up -d | ||
|
||
- name: Create entities | ||
run: | | ||
docker compose exec api /usr/src/app/seeder.js 40 | ||
- name: Run updater | ||
run: | | ||
docker compose exec wdqs-updater /wdqsup/runUpdateWbStack.sh -- \ | ||
--wikibaseHost wikibase.svc \ | ||
--ids Q1,Q2,Q3,Q4,Q5,Q6,Q7,Q8,Q9,Q10,Q11,Q12,Q13,Q14,Q15 \ | ||
--entityNamespaces 120,122,146 \ | ||
--sparqlUrl http://wdqs.svc:9999/bigdata/namespace/wdq/sparql \ | ||
--wikibaseScheme http \ | ||
--conceptUri https://wikibase.svc | ||
docker compose exec wdqs-updater /wdqsup/runUpdateWbStack.sh -- \ | ||
--wikibaseHost wikibase.svc \ | ||
--ids Q16,Q17,Q18,Q19,Q20,Q21,Q22,Q23,Q24,Q25,Q26,Q27,Q28,Q29,Q30 \ | ||
--entityNamespaces 120,122,146 \ | ||
--sparqlUrl http://wdqs.svc:9999/bigdata/namespace/wdq/sparql \ | ||
--wikibaseScheme http \ | ||
--conceptUri https://wikibase.svc | ||
- name: Make a sparql request | ||
run: | | ||
NUM_BINDINGS=$(curl 'http://localhost:9999/bigdata/namespace/wdq/sparql' -H 'Accept: application/sparql-results+json' --data-raw 'query=SELECT+*+WHERE%7B+%3Fs+%3Fp+%3Fo+%7D' | jq '.results.bindings | length') | ||
# should be plenty more than 100 | ||
if [[ "$NUM_BINDINGS" -lt 100 ]]; then | ||
exit 1 | ||
fi | ||
- name: docker-compose logs > output.log | ||
if: always() | ||
run: docker-compose ${{ env.COMPOSE_ARGS }} logs --no-color > "output.log" | ||
|
||
- name: Archive output.log | ||
uses: actions/upload-artifact@v2 | ||
if: always() | ||
with: | ||
name: DockerTestLog | ||
if-no-files-found: error | ||
path: output.log | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,13 @@ | ||
version: '2' | ||
services: | ||
wdqs-updater: | ||
build: | ||
context: . | ||
dockerfile: Dockerfile | ||
restart: unless-stopped | ||
tty: true | ||
entrypoint: /bin/bash | ||
depends_on: | ||
- wdqs | ||
environment: | ||
- HEAP_SIZE=32m |
File renamed without changes.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,18 @@ | ||
const wbEdit = require('wikibase-edit')(require('./wikibase-edit.config')); | ||
|
||
module.exports = async function (numEntities) { | ||
const result = [] | ||
for (let i = 1; i <= numEntities; i++) { | ||
const { entity } = await wbEdit.entity.create({ | ||
type: 'item', | ||
labels: { | ||
'en': new Date().toISOString() | ||
}, | ||
descriptions: { | ||
'en': new Date().toDateString() + new Date().toISOString() | ||
} | ||
}) | ||
result.push(entity) | ||
} | ||
return result | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,21 @@ | ||
#!/usr/bin/env node | ||
|
||
const createEntities = require('./create-entities'); | ||
|
||
const numEntities = parseInt(process.argv[2], 10) | ||
if (!Number.isFinite(numEntities)) { | ||
throw new Error(`Expected numeric argument to be given, got ${process.argv[2]}`) | ||
} | ||
|
||
;(async function () { | ||
const result = await createEntities(numEntities) | ||
return `Sucessfully created ${result.length} entities` | ||
})() | ||
.then((result) => { | ||
console.log(result) | ||
}) | ||
.catch((err) => { | ||
console.error("Failed to run command.") | ||
console.error(err) | ||
process.exit(1) | ||
}) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters