Re: [go-nuts] repeatable builds

2017-10-23 Thread Conrad Wood
Hi,

Thanks for that.
Right now, checking in an entire GOPATH makes the most sense to me.
That seems to eliminate the need for godep, hellogopher etc... altogether.

presumably, when you update the packages, you just use -u flag for "go 
get", right?

Conrad


On Wednesday, 18 October 2017 15:30:12 UTC+1, Domain Admin wrote:
>
>
>
> On 10/18/2017 03:08 AM, Conrad Wood wrote: 
> > I did (admittedly found it only after I send the email). I give that a 
> > try and see how it goes - thank you! 
> > 
> > And advice on point #2 by any chance? 
> When I have a mixed language repo I tend to include an entire GOPATH in 
> the the repo. Something like direnv (https://direnv.net/) can be used to 
> automatically set the GOPATH environment variable as needed. 
> > 
> > 
> > 
> > On Tue, 2017-10-17 at 19:46 +0100, roger peppe wrote: 
> >> Have you looked at the dep tool (github.com/golang/dep) ? 
> >> 
> >> On 17 Oct 2017 13:42, "Conrad Wood"  
> wrote: 
> >>> Hi, 
> >>> 
> >>> We're considering Go for new services in our software architecture. 
> >>> Generally it seems like a good fit. There are a few things I'm not 
> >>> sure about though, so I wonder what others do: 
> >>> 
> >>> 1. How does one ensure repeatable builds? (go get obviously pulls 
> >>> from the internet by default.to get repeatable and versioned 
> >>> builds, does one keep the packages itself in a git repository?) 
> >>> 
> >>> 2. Our repositories have a lot of files (documentation, tools, 
> >>> tests, and whatnot, a java client), and only a fairly small part of 
> >>> actual Go code. However, the go code needs to remain within the 
> >>> GOPATH. The java classes on the other hand need to reside in the 
> >>> CLASSPATH. To make matters worse, go doesn't like symlinks in the 
> >>> gopath. (https://github.com/golang/go/issues/14054). What I really 
> >>> want, is a self contained repository to has all the bits and bobs 
> >>> that we need to this particular service and is compilable and 
> >>> executable from it's own directory. 
> >>> 
> >>> I am thinking of the workflow for developers, and I'm trying to 
> >>> achieve (and did with C and Java) a simple "git clone [repo]" ; cd 
> >>> repo ; ./build.sh" to get started quickly and easily. Ideally the 
> >>> server would execute the same steps and produce the binaries 
> >>> required and use the same dependencies as the compiler on the 
> >>> developer workstation. 
> >>> 
> >>> How do others set this up with Go? 
> >>> 
> >>> Thanks, 
> >>> 
> >>> Conrad 
> >>> 
>
>
>

-- 
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+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [go-nuts] repeatable builds

2017-10-19 Thread Nathan Kerr
Another option for 2 is https://github.com/cloudflare/hellogopher

-- 
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+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [go-nuts] repeatable builds

2017-10-18 Thread Jack Christensen



On 10/18/2017 03:08 AM, Conrad Wood wrote:

I did (admittedly found it only after I send the email). I give that a
try and see how it goes - thank you!

And advice on point #2 by any chance?
When I have a mixed language repo I tend to include an entire GOPATH in 
the the repo. Something like direnv (https://direnv.net/) can be used to 
automatically set the GOPATH environment variable as needed.




On Tue, 2017-10-17 at 19:46 +0100, roger peppe wrote:

Have you looked at the dep tool (github.com/golang/dep) ?

On 17 Oct 2017 13:42, "Conrad Wood"  wrote:

Hi,

We're considering Go for new services in our software architecture.
Generally it seems like a good fit. There are a few things I'm not
sure about though, so I wonder what others do:

1. How does one ensure repeatable builds? (go get obviously pulls
from the internet by default.to get repeatable and versioned
builds, does one keep the packages itself in a git repository?)

2. Our repositories have a lot of files (documentation, tools,
tests, and whatnot, a java client), and only a fairly small part of
actual Go code. However, the go code needs to remain within the
GOPATH. The java classes on the other hand need to reside in the
CLASSPATH. To make matters worse, go doesn't like symlinks in the
gopath. (https://github.com/golang/go/issues/14054). What I really
want, is a self contained repository to has all the bits and bobs
that we need to this particular service and is compilable and
executable from it's own directory.

I am thinking of the workflow for developers, and I'm trying to
achieve (and did with C and Java) a simple "git clone [repo]" ; cd
repo ; ./build.sh" to get started quickly and easily. Ideally the
server would execute the same steps and produce the binaries
required and use the same dependencies as the compiler on the
developer workstation.

How do others set this up with Go?

Thanks,

Conrad




--
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+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [go-nuts] repeatable builds

2017-10-18 Thread Conrad Wood
I did (admittedly found it only after I send the email). I give that a
try and see how it goes - thank you!

And advice on point #2 by any chance?




On Tue, 2017-10-17 at 19:46 +0100, roger peppe wrote:
> Have you looked at the dep tool (github.com/golang/dep) ?
> 
> On 17 Oct 2017 13:42, "Conrad Wood"  wrote:
> > Hi,
> > 
> > We're considering Go for new services in our software architecture.
> > Generally it seems like a good fit. There are a few things I'm not
> > sure about though, so I wonder what others do:
> > 
> > 1. How does one ensure repeatable builds? (go get obviously pulls
> > from the internet by default.to get repeatable and versioned
> > builds, does one keep the packages itself in a git repository?) 
> > 
> > 2. Our repositories have a lot of files (documentation, tools,
> > tests, and whatnot, a java client), and only a fairly small part of
> > actual Go code. However, the go code needs to remain within the
> > GOPATH. The java classes on the other hand need to reside in the
> > CLASSPATH. To make matters worse, go doesn't like symlinks in the
> > gopath. (https://github.com/golang/go/issues/14054). What I really
> > want, is a self contained repository to has all the bits and bobs
> > that we need to this particular service and is compilable and
> > executable from it's own directory. 
> > 
> > I am thinking of the workflow for developers, and I'm trying to
> > achieve (and did with C and Java) a simple "git clone [repo]" ; cd
> > repo ; ./build.sh" to get started quickly and easily. Ideally the
> > server would execute the same steps and produce the binaries
> > required and use the same dependencies as the compiler on the
> > developer workstation.
> > 
> > How do others set this up with Go?
> > 
> > Thanks,
> > 
> > Conrad 
> > 

-- 
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+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [go-nuts] repeatable builds

2017-10-17 Thread roger peppe
Have you looked at the dep tool (github.com/golang/dep) ?

On 17 Oct 2017 13:42, "Conrad Wood"  wrote:

> Hi,
>
> We're considering Go for new services in our software architecture.
> Generally it seems like a good fit. There are a few things I'm not sure
> about though, so I wonder what others do:
>
> 1. How does one ensure repeatable builds? (go get obviously pulls from the
> internet by default.to get repeatable and versioned builds, does one keep
> the packages itself in a git repository?)
>
> 2. Our repositories have a lot of files (documentation, tools, tests, and
> whatnot, a java client), and only a fairly small part of actual Go code.
> However, the go code needs to remain within the GOPATH. The java classes on
> the other hand need to reside in the CLASSPATH. To make matters worse, go
> doesn't like symlinks in the gopath. (https://github.com/golang/go/
> issues/14054). What I really want, is a self contained repository to has
> all the bits and bobs that we need to this particular service and is
> compilable and executable from it's own directory.
>
> I am thinking of the workflow for developers, and I'm trying to achieve
> (and did with C and Java) a simple "git clone [repo]" ; cd repo ;
> ./build.sh" to get started quickly and easily. Ideally the server would
> execute the same steps and produce the binaries required and use the same
> dependencies as the compiler on the developer workstation.
>
> How do others set this up with Go?
>
> Thanks,
>
> Conrad
>
> --
> 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+unsubscr...@googlegroups.com.
> For more options, visit https://groups.google.com/d/optout.
>

-- 
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+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


[go-nuts] repeatable builds

2017-10-17 Thread Conrad Wood
Hi,

We're considering Go for new services in our software architecture. 
Generally it seems like a good fit. There are a few things I'm not sure 
about though, so I wonder what others do:

1. How does one ensure repeatable builds? (go get obviously pulls from the 
internet by default.to get repeatable and versioned builds, does one keep 
the packages itself in a git repository?) 

2. Our repositories have a lot of files (documentation, tools, tests, and 
whatnot, a java client), and only a fairly small part of actual Go code. 
However, the go code needs to remain within the GOPATH. The java classes on 
the other hand need to reside in the CLASSPATH. To make matters worse, go 
doesn't like symlinks in the gopath. 
(https://github.com/golang/go/issues/14054). What I really want, is a self 
contained repository to has all the bits and bobs that we need to this 
particular service and is compilable and executable from it's own 
directory. 

I am thinking of the workflow for developers, and I'm trying to achieve 
(and did with C and Java) a simple "git clone [repo]" ; cd repo ; 
./build.sh" to get started quickly and easily. Ideally the server would 
execute the same steps and produce the binaries required and use the same 
dependencies as the compiler on the developer workstation.

How do others set this up with Go?

Thanks,

Conrad 

-- 
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+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.