This is the mail archive of the cygwin mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

mintty: volunteer to maintain continuous integration build


Dear Mintty developers,

I'd like to volunteer to maintain a continuous integration build and
test environment for the Mintty project, here is a demo how it looks
like:
https://tea-ci.org/fracting/mintty/27


The CI script is pretty simple, only a few lines:
https://github.com/mintty/mintty/pull/529/files
--- snip ---

build:
image: fracting/$$platform
pull: true
shell: $$platform
commands:
- cd src
- make wm_names.t
- make vk_names.t
- cd ..
- make
- bin/mintty.exe --log mintty.log --exec echo hello mintty
- grep hello mintty.log
- bin/mintty.exe --log - --exec echo hello stdout | grep hello
matrix:
platform:
- cygwin32
- msys32
--- snip ---

With the above solution applied, everytime either a patch is pushed to
the mintty repo or a pull request is submitted against the mintty
repo, Tea CI will trigger a new matrix build, it builds mintty for
both Cygwin 32 bit and MSYS2 32 bit. (64bit support is on the road). I
copied build scripts from MSYS2 mintty PKGBUILD, if there is anything
I was doing wrong please let me know and I'll improve them.

After build succeeded, a set of very simple test cases are called, I
hope they are useful to help us detect possible bugs like
https://github.com/mintty/mintty/issues/528 earlier, which was
discovered when I was working on the continuous integration server. If
needed, we can add more complex test cases to the CI scripts and cover
more potential bugs.

I didn't add irc notification or continuous deployment to the CI
scripts yet, but this should not be hard, I guess continuous
deployment could be useful for building snapshots for testers.

What do you think about the CI solution? Is there anything you don't
like, or is there any more details you want to know? Is there any
missing feature you are looking for? For example, in theory we could
use the CI server to test 100 different kinds of locale in a matrix
build, but I'm not sure if that worth to do. Also, we could extent the
CI script to capture and upload screenshot during testing, it won't be
too easy but also won't be too hard, I'm just not sure if anyone need
it.

Please share me what you think, I'm willing to do any kind of
adjustment you like in order to get
https://github.com/mintty/mintty/pull/529 accepted.
If you like the CI solution, after merge PR 529, please register
tea-ci.org and activate the mintty project using the Web UI, and then
just waiting for pushes/prs ;)

Thanks for the great job on Mintty! My very best regards.


-- 
Regards,
Qian Hong

-
http://www.winehq.org

--
Problem reports:       http://cygwin.com/problems.html
FAQ:                   http://cygwin.com/faq/
Documentation:         http://cygwin.com/docs.html
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]