apache / apache/apisix-dashboard
APISIX Dashboard Tests
- Dominant language
- TypeScript
- Stars
- 1.2k
- Forks
- 617
- Avg merge
- 4d 18h
- Merged PRs (30d)
- 1
Description
## Goal
Ensure that the included Dashboard tests pass when Apache APISIX releases a new version.
## Workflow
1. `apache/apisix`: create `release/x.y.z` branch.
2. Update `apache/apisix-dashboard` submodule's commit id to the latest one.
3. Trigger CI in the `apache/apisix` repository to clone the `apache/apisix-dashboard` and run tests against the commit ID.
4. If test cases fail, resolve the issues in `apache/apisix-dashboard` and update the submodule's commit ID.
5. If test cases succeed, continue the release work.
## TODOs
- [x] apache/apisix-dashboard: use `apisix:dev` image to run tests.
- [x] Update `apache/apisix-docker` to push the `apisix:dev` image to DockerHub for every `apache/apisix` commit. (If it's hard to do this in the docker repo, consider putting the logic to apisix main repo). Refer to https://github.com/apache/apisix-docker/blob/master/.github/workflows/apisix_dev_push_docker_hub.yaml Refer to https://github.com/apache/apisix-docker/issues/593
Contributor guide
Research direction
Start by reviewing the release workflow in the issue and the referenced .github/workflows/apisix_dev_push_docker_hub.yaml file in apache/apisix-docker. Check how apache/apisix clones the apache/apisix-dashboard submodule and runs its tests; done means the latest dashboard commit is tested successfully against a new APISIX release and the submodule ID is updated when needed.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- docker, github-actions, typescript
- Domain
- ci-cd, devops, release, testing
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 25/100