Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Use dockerized Fuseki for PHPUnit tests #1488

Closed
osma opened this issue Aug 23, 2023 · 3 comments
Closed

Use dockerized Fuseki for PHPUnit tests #1488

osma opened this issue Aug 23, 2023 · 3 comments
Assignees
Milestone

Comments

@osma
Copy link
Member

osma commented Aug 23, 2023

Currently we have set up PHPUnit tests so that Fuseki is installed by the init_fuseki.sh script as a regular Java process. If necessary, the script downloads the Fuseki installation tarball from the Apache Jena download site, starts it up, and then loads the test vocabulary data from the tests/test-vocab-data directory using the s-put utility that comes with Fuseki.

For Skosmos 3, I would like to switch to a dockerized Fuseki instance instead of using a regular Java process. This would have the following benefits:

  1. The same Fuseki container (together with dockerized Skosmos, both running via docker compose) can also be used for running Cypress tests
  2. We can use the exact same container setup both under GitHub Actions CI and local developer machines
  3. "Eat your own dogfood": it's good practice to make use of our own Dockerfiles now that we have them

Prerequisites

We should first switch to the official Fuseki Dockerfile from Apache Jena; this is being worked on in PR #1477 by @kinow

How to implement

  • init_fuseki.sh needs to be rewritten so it simply runs a docker compose command instead of the current code for downloading, installing and starting up Fuseki; also, test vocabularies should be loaded using e.g. curl since we don't have s-put available anymore
  • some changes to the GitHub Actions CI configuration may be necessary
  • CONTRIBUTING.md and the wiki documentation for unit and integration tests should be modified accordingly (e.g. need to explain that Docker is necessary for running PHPUnit tests locally)
@osma osma added this to the 3.0 milestone Aug 23, 2023
@kinow
Copy link
Collaborator

kinow commented Aug 23, 2023

+1!!! Thanks @osma !

@osma osma self-assigned this Aug 24, 2023
@osma
Copy link
Member Author

osma commented Aug 24, 2023

Starting work on this, using the commits from PR #1477 as a starting point.

@osma
Copy link
Member Author

osma commented Sep 5, 2023

Closed via #1496

@osma osma closed this as completed Sep 5, 2023
@joelit joelit moved this to Done (verified in test.dev.finto.fi, set Milestone 3.0 for both issue & PR) in Skosmos 3.0 Backlog Aug 8, 2024
@osma osma modified the milestones: 3.x, 3.0 Jan 22, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
Status: Done (verified in test.dev.finto.fi, set Milestone 3.0 for both issue & PR)
Development

No branches or pull requests

2 participants