react/gatsby web client for opentutor
A docker image that serves a web client for interacting with opentutor.
In order to function properly the client generally requires these environment variables defined:
- DIALOG_ENDPOINT
To just run the gatsby client in locally do:
make develop
Any changes made to this repo should be covered by tests. To run the existing tests:
make test
All pushed commits must also pass format and lint checks. To check all required tests before a commit:
make test-all
To fix formatting issues:
make format
To run cypress tests locally you need two shells, first make sure the client is running locally:
cd client && make develop
...then you can run the full cypress test suite with
cd cypress && npm run cy:open
...then in the cypress browser window, click a spec to run it (or run all).
Currently, this image is semantically versioned. When making changes that you want to test in another project, create a branch and PR and then you can release a test tag one of two ways:
To build/push a pre-release semver tag of opentutor-web-client
for the current commit in your branch
- create a github release from your development branch with tag format
/^\d+\.\d+\.\d+(-[a-z\d\-.]+)?$/
(e.g.1.0.0-alpha.1
) - find the
docker_tag_release
workflow for your git tag in github actions - this will create a tag like
opentutor/opentutor-web-client:1.0.0-alpha.1
Once your changes are approved and merged to master, you should create a release tag in semver format as follows:
- create a github release from master with tag format
/^\d+\.\d+\.\d$/
(e.g.1.0.0
) - find the
docker_tag_release
workflow for your git tag in github actions - this will create a tag like
opentutor/opentutor-web-client:1.0.0