[CI] Setup nightly deployment to do the e2e tests and agile CI
Nobody has claimed this yet.
- Dominant language
- JavaScript
- Stars
- 2.7k
- Forks
- 554
- Avg merge
- 20h 42m
- Merged PRs (30d)
- 14
Description
Motivation
Current CI for pull request cost more than 30 minutes, we always have to wait for the CI for a long time, here is the details:
- Jenkins:
- Build images (1~2 min)
- Deploy (11~12 min)
- Run tests (10~11 min)
- Clean cluster (6~7 min)
- GitHub Actions:
- CI (4~5 min)
- Deployment test
- Exporter test
- Watchdog test
- Rest-server test
- Webportal test
- Webportal Plugin test
- Lint (<1 min)
- CI (4~5 min)
- Travis-ci: (<5 min)
If we setup a nightly deployment/test and move some heavy part from CI to the it, we can agile CI and do more automatic tests.


Goal
- Agile CI in pull request
- The CI will contain unit tests and code coverages
- The nightly deployment/test will include PAI deploy and end-to-end tests
Proposal
- Move current Jenkins part from CI to the nightly deployment/test.
- Add build & unit-tests to GitHub Actions part to make sure the PR was buildable.
- Add code coverage threshold to CI.
- Add the heavy tests to nightly build.
In discuss meeting, add these items:
- Push nightly-build tag images to docker hub after nightly-build
- Add more feature to Lint action (swagger, CN document, …)
- Test for quick start deployment in nightly-deployment
- Manually trigger nightly build/tests
- Set GitHub action to require, finally move Travis-ci to GitHub Action

Discuss:
-
Nightly-deployment/test trigger time
a. 00:00 -
How to alert when nightly build error
a. Show in GitHub page
b. Send email to commit owner -
code coverage threshold
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Review the existing Jenkins, GitHub Actions, and Travis-ci jobs first, using the current PR stages listed in the issue as the baseline. Define how nightly deployment/test will run PAI deploy and end-to-end tests while PR CI keeps unit tests and coverage. Done means the heavy tests move to the nightly workflow and the proposed CI goals are covered.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- docker, github-actions
- Domain
- ci-cd, devops, infrastructure
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100