FAQ
I made a Mac OS application to do similar task for go applications, it
watches application files and build them automatically.

http://gotray.extremedev.org/


Dave Cheney於 2011年9月15日星期四UTC+8上午7時07分28秒寫道:
Hi Dave,

I've run a few Jenkins builders tracking golang for a while, none are
currently online right now for a variety of non technical reasons.

After playing with some of the features of jenkins my advice would be
to start with something like the following.

* setup a builder for +tip, weekly and release, rather than using
something like the matrix builder because the former is easier to
trigger parameterised builds from.
** in the builder, set GOARCH and GOOS as expected, then set
GOROOT=$WORKSPACE
* if you want to test packages against various combinations of +tip,
weekly and release trigger them as port build steps on the latter
using something like the
https://wiki.jenkins-ci.org/display/JENKINS/Parameterized+Trigger+Plugin
to pass GOARCH.

Cheers

Dave
On Thu, Sep 15, 2011 at 5:54 AM, Dave Grijalva wrote:
I'm trying to get Jenkins setup to build/test my go applications and
libraries. Does anyone have any tricks for managing the go toolchain
on CI servers other than manually installing on each node?

Things I'd like to manage:
- tracking multiple versions of go
- tracking which versions of go projects target
- library version dependency nightmares with goinstall

Anyone doing anything like this already? Got tips?
--
You received this message because you are subscribed to the Google Groups "golang-nuts" group.
To unsubscribe from this group and stop receiving emails from it, send an email to golang-nuts+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.

Search Discussions

  • Miki Tebeka at Feb 13, 2013 at 9:20 pm
    A bit OT, but for nice tests results you can
    try https://bitbucket.org/tebeka/go2xunit
    On Wednesday, September 14, 2011 12:54:41 PM UTC-7, Dave Grijalva wrote:

    I'm trying to get Jenkins setup to build/test my go applications and
    libraries. Does anyone have any tricks for managing the go toolchain
    on CI servers other than manually installing on each node?

    Things I'd like to manage:
    - tracking multiple versions of go
    - tracking which versions of go projects target
    - library version dependency nightmares with goinstall

    Anyone doing anything like this already? Got tips?
    --
    You received this message because you are subscribed to the Google Groups "golang-nuts" group.
    To unsubscribe from this group and stop receiving emails from it, send an email to golang-nuts+unsubscribe@googlegroups.com.
    For more options, visit https://groups.google.com/groups/opt_out.
  • Eric at Feb 13, 2013 at 9:48 pm
    nice one ! I've built a small bash script to almost do the same (with much
    less features), I'll try it ASAP. (even maybe integrate within "gpk test"
    as an xunit output option. )
    On Wednesday, February 13, 2013 10:20:39 PM UTC+1, Miki Tebeka wrote:

    A bit OT, but for nice tests results you can try
    https://bitbucket.org/tebeka/go2xunit
    On Wednesday, September 14, 2011 12:54:41 PM UTC-7, Dave Grijalva wrote:

    I'm trying to get Jenkins setup to build/test my go applications and
    libraries. Does anyone have any tricks for managing the go toolchain
    on CI servers other than manually installing on each node?

    Things I'd like to manage:
    - tracking multiple versions of go
    - tracking which versions of go projects target
    - library version dependency nightmares with goinstall

    Anyone doing anything like this already? Got tips?
    --
    You received this message because you are subscribed to the Google Groups "golang-nuts" group.
    To unsubscribe from this group and stop receiving emails from it, send an email to golang-nuts+unsubscribe@googlegroups.com.
    For more options, visit https://groups.google.com/groups/opt_out.
  • Eric at Feb 13, 2013 at 9:42 pm
    My personal "solution" is:

    1/ build a cross platform go env on a single node. It's always much easier
    to build everything on a single slave. Then test on every platform (build
    once, run anywhere, right ?)

    2/ to solve the go get nightmare, I've build a tool gopack ( available at
    github.com/gopack/gpk )
    then everything gets smooth:
    on a jenkins freestyle project, my script looks like

    "
    #step 1 simple compile to fail fast on big mistakes
    gpk c # compile the project, including the dependencies)
    gpk t # run every tests
    if $0 then exit $0 # fail if unit test failed

    #step 2 cross compile everything
    GOOS="windows" GOARCH=amd64 gpk c
    GOOS="linux" GOARCH=amd64 gpk c
    ...

    #( gpk c is about to have an option to also compile the test executables)

    #step 3 push the src, and all executables to a LAN server
    gpk push server ... # push all the executables, and the sources into the
    gopack "team" server (just a computer running "gpk serve"
    "

    and that's it 3 simple steps, to build and unit test

    the fourth step is to start a multiple node project, that wget all test
    executable ( the gpk serve offers this kind of service) and to execute them.
    (no go dependencies on the test nodes, great !)

    caveat: step 1 to 3 are already working, but i'm currently working on the
    ability to compile test executables (this still need to be done "by hand"
    go test does not provide a nice command like go test -c ./src/...
    unfortunately )
    but the feature should be done by the end of the month, (or you can help me
    doing it ) I'm also unsure of how wget should ask for tests (should the
    server autodetect the platform in the http request ? )


    --
    You received this message because you are subscribed to the Google Groups "golang-nuts" group.
    To unsubscribe from this group and stop receiving emails from it, send an email to golang-nuts+unsubscribe@googlegroups.com.
    For more options, visit https://groups.google.com/groups/opt_out.

Related Discussions

Discussion Navigation
viewthread | post
Discussion Overview
groupgolang-nuts @
categoriesgo
postedFeb 13, '13 at 4:03p
activeFeb 13, '13 at 9:48p
posts4
users3
websitegolang.org

3 users in discussion

Eric: 2 posts C9s: 1 post Miki Tebeka: 1 post

People

Translate

site design / logo © 2022 Grokbase