-
Notifications
You must be signed in to change notification settings - Fork 60
github-ci: add reusable testing workflow #112
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
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
To be honest, it's hard to run CI pipeline in head to test its ability to work, and I don't see any actions in Actions history. But it seems adequate. I have a couple of questions.
First of all, test runs only main folder tests. There are also submodules (not git sumbodules, go packages inside a package): queue
and multi
(and uuid
after #104 merge) which have their own tests. I think it is worth to run them in CI too. It may be troublesome since current test environment setup is manual -- you need to start a different tarantool for each module, and there are no prepare (like mkdir snap xlog
) or cleanup scripts. Moreover, some modules tests may be outdated or broken (I ensured that uuid
tests work fine, but it seems there may be some troubles with user grants in queue test). I think it is worth to build a working test environment first and then run it with required artifacts. But it seems like a separate task and I'm not sure that any team have it in their plans.
The second question is related to the first one. If we are setting up CI for Tarantool integration, why not set up CI with classic on-push test run? Again, it looks like it is not the part of your task. But it seems weird for me that we will have integration pipeline and not have most simple and useful pipeline with test run per-push.
1262c4f
to
b1876ed
Compare
Ok, let's set up a simple CI first (PR #116). The queue testing is commented out for now due to #115. So we need to fix #115, then merge #116. |
9566d74
to
7fa1f8f
Compare
7fa1f8f
to
f01f90d
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
No objections from me.
It would be nice to see a testing job.
Manual test run. |
The idea of this workflow is to be a part of the 'integration.yml' workflow from the tarantool repo to verify the integration of the go-tarantool connector with an arbitrary tarantool version. This workflow is not triggered on a push to the repo and cannot be run manually since it has only the 'workflow_call' trigger. This workflow will be included in the tarantool development cycle and called by the 'integration.yml' workflow from the tarantool project on a push to the master and release branches for verifying integration of tarantool with go-tarantool. Part of tarantool/tarantool#6607 Part of tarantool/tarantool#5265 Part of tarantool/tarantool#6056
f01f90d
to
66983d1
Compare
Overview This release adds a number of features and updates documentation. Breaking changes There are no breaking changes in the release. New features Coveralls support (#149). Reusable testing workflow (integration testing with latest Tarantool) (#112). Simple CI based on GitHub actions (#114). Support UUID type in msgpack (#90). Go modules support (#91). queue-utube handling (#85). Master discovery (#113). SQL support (#62). Handle everything with `go test` (#115). Update API documentation: comments and examples (#123). Bugfixes Reset buffer if its average use size smaller than quater of capacity (#95). Fix queue tests (#107). Make test case consistent with comments (#105).
Overview This release adds a number of features. Also it significantly improves testing, CI and documentation. Breaking changes There are no breaking changes in the release. New features Support UUID type in msgpack (#90). queue-utube handling (#85). Master discovery (#113). SQL support (#62). Bugfixes Reset buffer if its average use size smaller than quater of capacity (#95). Testing Coveralls support (#149). Reusable testing workflow (integration testing with latest Tarantool) (#112). Simple CI based on GitHub actions (#114). Handle everything with `go test` (#115). Fix queue tests (#107). Make test case consistent with comments (#105). Other Go modules support (#91). Update API documentation: comments and examples (#123).
Overview This release adds a number of features. Also it significantly improves testing, CI and documentation. Breaking changes There are no breaking changes in the release. New features Support UUID type in msgpack (#90). queue-utube handling (#85). Master discovery (#113). SQL support (#62). Bugfixes Reset buffer if its average use size smaller than quater of capacity (#95). Testing Coveralls support (#149). Reusable testing workflow (integration testing with latest Tarantool) (#112). Simple CI based on GitHub actions (#114). Handle everything with `go test` (#115). Fix queue tests (#107). Make test case consistent with comments (#105). Other Go modules support (#91). Update API documentation: comments and examples (#123).
The idea of this workflow is to be a part of the 'integration.yml'
workflow from the tarantool repo to verify the integration of the
go-tarantool connector with an arbitrary tarantool version.
This workflow is not triggered on a push to the repo and cannot be run
manually since it has only the 'workflow_call' trigger. This workflow
will be included in the tarantool development cycle and called by the
'integration.yml' workflow from the tarantool project on a push to the
master and release branches for verifying integration of tarantool with
go-tarantool.
Part of tarantool/tarantool#6607
Part of tarantool/tarantool#5265
Part of tarantool/tarantool#6056
Related to tarantool/tarantool#6615