a build tool for Go, with a focus on cross-compiling, packaging and deployment

goxc build status

NOTE: goxc has long been in maintenance mode. Ever since Go1.5 supported simple cross-compilation, this tool lost much of its value. There are still many aspects of goxc which I'm very proud of, and some packaging features in particular, which are still useful. I'm very much a go user, but I myself haven't had any need for goxc for a long while.

If you see something you'd like to add to goxc, please go ahead, fork and PR. Good PRs will earn you commit access to the repo. Thanks for everyone's help over the years.

goxc is a build tool for Go, with a focus on cross-compiling and packaging.

By default, goxc [g]zips (& .debs for Linux) the programs, and generates a 'downloads page' in markdown (with a Jekyll header).

goxc is written in Go but uses os.exec to call 'go build' with the appropriate flags & env variables for each supported platform.

goxc was inspired by Dave Cheney's Bash script golang-crosscompile.

  • goxc crosscompiles to all platforms at once.
  • The artifacts are saved into a directory structure along with a markdown file of relative links.
  • Artifacts are packaged as zips, tgzs, or debs. Defaults for each OS/architecture.
  • AND, goxc can now upload your files to github releases OR bintray.com.
  • See ‘Github Releases’ section below.

Notable Features

  • Cross-compilation, to all supported platforms, or a specified subset.
    • Validation of toolchain & verification of cross-compiled artifacts
    • Specify target platform, via 'Build Constraint'-like syntax (via commandline flag e.g. -bc="windows linux,!arm", or via config)
  • Automatic (re-)building toolchain to all or specified platforms.
  • 'task' based invocation, similar to 'make' or 'ant'. e.g. goxc xc or goxc clean go-test
    • The 'default' task alias will, test, cross-compile, verify, package up your artifacts for each platform, and generate a 'downloads page' with links to each platform.
    • Various go tools available via tasks: go-test, go-vet, go-fmt, go-install, go-clean.
    • You can modify task behaviour via configuration or commandline flags.
  • JSON-based configuration files for repeatable builds.
    • Most config data can be written via flags (using -wc option) - less JSON fiddliness.
    • Includes support for multiple configurations per-project.
    • Per-task configuration options.
    • 'Override' config files for 'local environment' - working-copy-specific, or branch-specific, configurations.
  • Packaging & distribution
    • Zip (or tar.gz) archiving of cross-compiled artifacts & accompanying resources (READMEs etc)
    • Packaging into .debs (for Debian/Ubuntu Linux)
    • Upload to github.com releases.
    • bintray.com integration (deploys binaries to bintray.com). bintray.com registration required
    • 'downloads page' generation (markdown/html format; templatable).
  • Versioning:
    • track your version number via configuration data.
    • version number interpolation at compile-time (uses go's -ldflags compiler option to populate given constants or global variables with build version or build date)
    • version number interpolation of source code. goxc interpolate-source (new task available in 0.10.x).
    • the bump task facilitates increasing the app version number.
    • the tag task creates a tag in your vcs (currently only 'git' supported).
  • support for multiple binaries per project (goxc now searches subdirectories for 'main' packages)
  • support for multiple Go installations - choose at runtime with -goroot= flag.

Installation

goxc requires the go source and the go toolchain.

  1. Install go from source. (Requires gcc (or MinGW) and 'hg')

    • OSX Users Note: If you are using XCode 5 (OSX 10.9), it is best to go straight to Go 1.2rc5 (or greater). This is necessary because Apple have replaced the standard gcc with llvm-gcc, and Go 1.1 compilation tools depend on the usual gcc.

      • There is another workaround incase Go 1.2rc5 is not an option:

          brew tap homebrew/versions
          brew install apple-gcc42
          go get github.com/laher/goxc
          CC=`brew list apple-gcc42 | grep bin/gcc-4.2` goxc -t
        
  2. Install goxc:

    go get github.com/laher/goxc
    
  3. a. (just once per Go version): to pre-build the toolchains for all platforms:

    goxc -t
    
    • Note that rebuilding the toolchain is only required for Go up until v1.4. This step will become unnecessary in Go 1.5.
    • Note that, until goxc v0.16.0, rebuilding the toolchain was triggered automatically. This has now been switched off (by default). Automatic rebuilding was causing a number of subtle bugs for different users, and has been switched off since v0.16.0.
    • Also note that building the toolchain takes a while. Cross-compilation itself is quite fast.

Basic Usage

cd path/to/app/dir
goxc

More options

Use goxc -h to list all options.

  • e.g. To restrict by OS and Architecture (using the same syntax as Go Build Constraints):

     goxc -bc="linux,!arm windows,386 darwin"
    
  • e.g. To set a destination root directory and artifact version number:

     goxc -d=my/jekyll/site/downloads -pv=0.1.1
    
  • 'Package version' can be compiled into your app if you define a VERSION variable in your main package.

"Tasks"

goxc performs a number of operations, defined as 'tasks'. You can specify tasks as commandline arguments

  • goxc -t performs one task called 'toolchain'. It's the equivalent of goxc -d=~ toolchain
  • The default task is actually several tasks, which can be summarised as follows:
    • validate (tests the code) -> compile (cross-compiles code) -> package ([g]zips up the executables and builds a 'downloads' page)
  • You can specify one or more tasks, such as goxc go-fmt xc
  • You can skip tasks with '-tasks-='. Skip the 'package' stage with goxc -tasks-=package
  • For a list of tasks and 'aliases', run goxc -h tasks
  • Several tasks have options available for overriding. You can specify them in config or via flags. Just use goxc <taskname> -task-setting=value <othertask>
  • For more info on a particular task, run goxc -h <taskname>. This will also show you the options available for that task.
  • The easiest way to see how to configure tasks in config is to write some task config via -wc, e.g. goxc -wc xc -GOARM=5

Outcome

By default, artifacts are generated and then immediately archived into (outputdir).

Examples:

  • /my/outputdir/0.1.1/myapp_0.1.1_linux_arm.tar.gz
  • /my/outputdir/0.1.1/myapp_0.1.1_windows_386.zip
  • /my/outputdir/0.1.1/myapp_0.1.1_linux_386.deb

The version number is specified with -pv=0.1.1 .

By default, the output directory is ($GOBIN)/(appname)-xc, and the version is 'unknown', but you can specify these.

e.g.

  goxc -pv=0.1.1 -d=/home/me/myuser-github-pages/myapp/downloads/

NOTE: it's bad idea to use project-level github-pages - your repo will become huge. User-level gh-pages are an option, but it's better to use the 'bintray' tasks.:

If non-archived, artifacts generated into a directory structure as follows:

(outputdir)/(version)/(OS)_(ARCH)/(appname)(.exe?)

Be careful if you want to build a project with multiple executables. You need to add {{.ExeName}} to your OutPath-setting in your '.goxc.json'. So it may look like the following code snippet.

"OutPath": "{{.Dest}}{{.PS}}{{.AppName}}{{.PS}}{{.Version}}{{.PS}}{{.ExeName}}_{{.Version}}_{{.Os}}_{{.Arch}}{{.Ext}}"

Configuration file

For repeatable builds (and some extra options), it is recomended to use goxc with one or more configuration file(s) to save and re-run compilations.

To create a config file (.goxc.json), just use the -wc (write config) option.

goxc -wc -d=../site/downloads -bc="linux windows" xc -GOARM=7

You can also use multiple config files to support different paremeters for each platform.

The following would add a 'local' config file, .goxc.local.json. This file's contents will override .goxc.json. The idea of the .local.json files is to git-ignore them - for any local parameters which you only want on this particular computer, but not for other users or even for yourself on other computers/OS's.

goxc -wlc -d=../site/downloads

The configuration file(s) feature is documented in much more detail in the wiki

Github Releases

This is the good stuff, so let’s go from the top.

  • First, install Go from source, and goxc. See ‘Installation’, above

  • If you haven’t already, build toolchain (all platforms!). This takes a while.

	goxc -t
  • Write a config file .goxc.json with info about your repo
	goxc -wc default publish-github -owner=<username> 
	goxc -wc default publish-github -repository=<reponame>
	cat .goxc.json
  • Bump a version, to get a meaningful version number.
	goxc bump
  • Go to your github account and create a personal access token

https://github.com/settings/tokens

  • Write a local config file .goxc.local.json with your key info, ensuring that the key doesn’t end up in your git repo. See more about config files in the wiki
	goxc -wlc default publish-github -apikey=123456789012
	echo ".goxc.local.json" >> .gitignore

Note that you can put a dummy key into the commandline and edit the file later with the real key.

  • Now, cross-compile, package and upload. All in one go.
	goxc

There’s heaps of ways to reconfigure each task to get the outcome you really want, but this produces some pretty sensible defaults. Have fun.

Limitations

  • Tested on Linux and Mac recently. Windows - some time ago now.
  • Currently goxc is only designed to build standalone Go apps without linked libraries. You can try but YMMV
  • The API is not considered stable yet, so please don't start embedding goxc method calls in your code yet - unless you 'Contact us' first! Then I can freeze some API details as required.
  • Bug: issue with config overriding. Empty strings do not currently override non-empty strings. e.g. -pi="" doesnt override the associated config setting PackageInfo

License

Copyright 2013 Am Laher

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

See also

Comments
  • Config file

    Config file

    Would be nice to have some kind of config file, like .goxc. Then we can simply run goxc . in project folder

    destination = ./out/
    zip = false
    verbose = true
    [platforms]
    windows = 386
    linux = amd64
    

    Best regards, Dobrosław Żybort

  • Darwin and Windows version did not work, compiled from Linux64

    Darwin and Windows version did not work, compiled from Linux64

    I am the author of WeedFS, and used your tool to compile for version 0.31 for many platforms. It's great and thanks! However, seems the darwin and windows version do not work. I compiled it on linux. The linux version works well.

    https://code.google.com/p/weed-fs/downloads/list

    The goxc is up-to-date.

  • run goxc problem

    run goxc problem

    goxc -os=linux -arch=386 -bc=linux -z="false" -tasks=xc -v

    ... [goxc:xc] 2014/04/02 17:24:35 Stopping after 'xc' failed with error 'The xc task will attempt to compile multiple binaries to the same path (/projectx/snapshot/linux_386/com.nroed.datawarehouse). Please make sure {{.Os}} and {{.Arch}} variables are used in the OutPath' [goxc] 2014/04/02 17:24:35 RunTasks returned error The xc task will attempt to compile multiple binaries to the same path (/projectx/snapshot/linux_386/com.nroed.datawarehouse). Please make sure {{.Os}} and {{.Arch}} variables are used in the OutPath

  • Enable CI for linux and darwin

    Enable CI for linux and darwin

    Hi there, I love goxc! Full disclosure: I work for Travis CI. I submit this issue as an individual, not as a Travis representative. I noticed the note in the README about not really being tested on Mac, and wanted to present the option of testing on Travis with multi-os enabled such that tests can be run on linux/amd64 and darwin/amd64. Thoughts? :heart:

  • Source Package not working at all

    Source Package not working at all

    I used the pkg-source task to build a source package so that I could upload to launchpad.

    But, it's not working at all. I had to make some changes to debian/control and debian/changelog files to actually make it a valid source package.

    Then came the failing builds. Here's the log

    Main error being.

    cd /build/buildd/whitespaces-1.0.0~1/src && find * -name '*.go' -exec dirname {} \; | xargs -n1 go install
    /bin/sh: 1: cd: can't cd to /build/buildd/whitespaces-1.0.0~1/src
    

    I would like to work with you to fix this issue and probably even build a launchpad task.

  • Incompatible Version Toolchaining?

    Incompatible Version Toolchaining?

    I'm running goxc -t to build my toolchain, but subsequent builds of my project now take 10x longer:

    ➜  update_service git:(master) ✗ time GOPATH=/Users/leehambley/Projects/update_service go build -v *.go
    github.com/mgutz/ansi
    runtime/cgo
    net
    crypto/x509
    net/textproto
    mime/multipart
    crypto/tls
    net/http
    command-line-arguments
    GOPATH=/Users/leehambley/Projects/update_service go build -v *.go  1.78s user 0.64s system 101% cpu 2.389 total
    

    The advice from #go-nuts is "your compiler, and source directories don't match in versions"... recommended solution cd go/src; ./all.bash

    That leaves me with the current situation:

    [goxc:xc] 2013/08/01 09:03:45 'go' returned error: exit status 1
    [goxc:xc] 2013/08/01 09:03:45 Error: exit status 1
    [goxc:xc] 2013/08/01 09:03:45 Have you run `goxc -t` for this platform???
    [goxc:xc] 2013/08/01 09:03:45 No successes!
    [goxc:xc] 2013/08/01 09:03:45 Stopping after 'xc' failed with error 'exit status 1'
    

    Is goxc bundling an older version those standard libraries? I'm using go 1.1.1 directly from Google's repository installed from source on the latest OSX?

  • Pass Through Options For ldflags

    Pass Through Options For ldflags

    It's really cool the way that you pass through ldflags. It'd be great if we could specify other flags to export, perhaps as a map[string]string of something like:

    build_time: date +"%m-%d-%Y"
    something_else: ....
    
  • x509 failed to load system roots and no roots provided for Darwin builds with Go 1.1

    x509 failed to load system roots and no roots provided for Darwin builds with Go 1.1

    I am getting x509 failed to load system roots and no roots provided for Darwin builds. After some googling, I got to know I need to disable cgo (https://groups.google.com/forum/?fromgroups#!topic/golang-nuts/z9Q1wTZNR7k). But looks like cgo is already disabled when building the toolchain (the Go version is 1.1). Here's the log: https://drone.io/github.com/jingweno/gh/184

  • Project Layout for multiple binaries

    Project Layout for multiple binaries

    Background

    I would like to have two separate binaries compiled by goxc and packaged into a single archive:

    • Server (Mock for testing only)
    • Client

    @laher Can you help me with that? I just trying to use go for my second small project. Thanks a lot in advance.

    Problem

    support for multiple binaries per project (goxc now searches subdirectories for 'main' packages)

    I'm not able to build the project with goxc though there seems to be support for projects with multiple binaries.

    The build fails with following error message:

    [goxc:go-vet] 2016/05/11 12:59:10 Task go-vet succeeded
    ?       github.com/my-project/logging-platform-client/api     [no test files]
    ?       github.com/my-project/logging-platform-client/cli     [no test files]
    # github.com/my-project/logging-platform-client/cmd
    cmd/test-server.go:41: main redeclared in this block
            previous declaration at cmd/logging-platform-client.go:7
    [goxc:go-test] 2016/05/11 12:59:10 'go' returned error: Wait error: exit status 2: # github.com/my-project/logging-platform-client/cmd
    cmd/test-server.go:41: main redeclared in this block
            previous declaration at cmd/logging-platform-client.go:7
    [goxc:go-test] 2016/05/11 12:59:10 Stopping after 'go-test' failed with error 'Wait error: exit status 2: # github.com/my-project/logging-platform-client/cmd
    cmd/test-server.go:41: main redeclared in this block
            previous declaration at cmd/logging-platform-client.go:7'
    [goxc] 2016/05/11 12:59:10 RunTasks error: Wait error: exit status 2: # github.com/my-project/logging-platform-client/cmd
    cmd/test-server.go:41: main redeclared in this block
            previous declaration at cmd/logging-platform-client.go:7
    

    Currently I structured the project the following way:

    [git:master]% tree
    .
    ├── api
    │   └── log.go
    ├── cli
    │   └── runner.go
    ├── cmd
    │   ├── logging-platform-client.go
    │   └── test-server.go
    ├── GoBuilds
    │   └── logging-platform-client
    │       └── 0.1.0
    └── Makefile
    

    Environment

    • goxc version: 0.17.1
    • goxc build date: empty
    • go version go1.6.2 linux/amd64
  • goxc does only build files with the host architecture

    goxc does only build files with the host architecture

    I am just trying the goxc tool for the first time, and after goxc -t and goxc -tasks-=package on my program I get the following:

    darwin_386/wam85: Mach-O 64-bit executable x86_64 darwin_amd64/wam85: Mach-O 64-bit executable x86_64 linux_386/wam85: Mach-O 64-bit executable x86_64 linux_amd64/wam85: Mach-O 64-bit executable x86_64 windows_386/wam85.exe: Mach-O 64-bit executable x86_64 windows_amd64/wam85.exe: Mach-O 64-bit executable x86_64

    I am on darwin/amd64, and the go build tree is from this mornings hg checkout. I used a config like this to make the toolchain:

    goxc -arch="386 amd64" -os="linux darwin windows" -wc

  • Binaries not building

    Binaries not building

    Hey @laher. I have recently changed to Mac from Linux. Running goxc on https://github.com/pksunkara/whitespaces is not building the binaries. As you can see from the below output, goxc is not bundling the binaries into the zip files.

    Can you fix it soon? Thanks.

    pksunkara@apicave →  make goxc
    goxc
    [goxc] 2015/04/02 02:23:06 Warning: could not establish list of source packages. Using working directory
    [goxc] 2015/04/02 02:23:06 Warning: could not find any main dirs: <nil>
    [goxc:go-vet] 2015/04/02 02:23:06 Task go-vet succeeded
    ?       github.com/pksunkara/whitespaces    [no test files]
    [goxc:go-test] 2015/04/02 02:23:07 Task go-test succeeded
    [goxc:go-install] 2015/04/02 02:23:07 Task go-install succeeded
    [goxc:xc] 2015/04/02 02:23:07 Parallelizing xc for 22 platforms, using max 3 of 4 processors
    [goxc:xc] 2015/04/02 02:23:07 Task xc succeeded
    [goxc:codesign] 2015/04/02 02:23:07 Task codesign succeeded
    [goxc:copy-resources] 2015/04/02 02:23:07 IncludeGlobs: [INSTALL* README* LICENSE*]
    [goxc:copy-resources] 2015/04/02 02:23:07 ExcludeGlobs: [*.go]
    [goxc:copy-resources] 2015/04/02 02:23:07 Globbing /Users/pksunkara/Coding/pksunkara/whitespaces/README.md for exclusion /Users/pksunkara/Coding/pksunkara/whitespaces/*.go
    [goxc:copy-resources] 2015/04/02 02:23:07 Globbing /Users/pksunkara/Coding/pksunkara/whitespaces/LICENSE for exclusion /Users/pksunkara/Coding/pksunkara/whitespaces/*.go
    [goxc:copy-resources] 2015/04/02 02:23:07 Resources to include: [README.md LICENSE]
    [goxc:copy-resources] 2015/04/02 02:23:07 resources: [README.md LICENSE]
    [goxc:copy-resources] 2015/04/02 02:23:07 Copying file /Users/pksunkara/Coding/pksunkara/whitespaces/README.md to /Users/pksunkara/Coding/pksunkara/whitespaces/build/1.1.1/README.md
    [goxc:copy-resources] 2015/04/02 02:23:07 Copying file /Users/pksunkara/Coding/pksunkara/whitespaces/LICENSE to /Users/pksunkara/Coding/pksunkara/whitespaces/build/1.1.1/LICENSE
    [goxc:copy-resources] 2015/04/02 02:23:07 Task copy-resources succeeded
    [goxc:archive-zip] 2015/04/02 02:23:07 Parallelizing archive-zip for 19 platforms, using max 3 of 4 processors
    [goxc:archive-zip] 2015/04/02 02:23:07 IncludeGlobs: [INSTALL* README* LICENSE*]
    [goxc:archive-zip] 2015/04/02 02:23:07 ExcludeGlobs: [*.go]
    [goxc:archive-zip] 2015/04/02 02:23:07 Globbing /Users/pksunkara/Coding/pksunkara/whitespaces/README.md for exclusion /Users/pksunkara/Coding/pksunkara/whitespaces/*.go
    [goxc:archive-zip] 2015/04/02 02:23:07 Globbing /Users/pksunkara/Coding/pksunkara/whitespaces/LICENSE for exclusion /Users/pksunkara/Coding/pksunkara/whitespaces/*.go
    [goxc:archive-zip] 2015/04/02 02:23:07 Resources to include: [README.md LICENSE]
    [goxc:archive-zip] 2015/04/02 02:23:07 IncludeGlobs: [INSTALL* README* LICENSE*]
    [goxc:archive-zip] 2015/04/02 02:23:07 ExcludeGlobs: [*.go]
    [goxc:archive-zip] 2015/04/02 02:23:07 Globbing /Users/pksunkara/Coding/pksunkara/whitespaces/README.md for exclusion /Users/pksunkara/Coding/pksunkara/whitespaces/*.go
    [goxc:archive-zip] 2015/04/02 02:23:07 Globbing /Users/pksunkara/Coding/pksunkara/whitespaces/LICENSE for exclusion /Users/pksunkara/Coding/pksunkara/whitespaces/*.go
    [goxc:archive-zip] 2015/04/02 02:23:07 Resources to include: [README.md LICENSE]
    [goxc:archive-zip] 2015/04/02 02:23:07 IncludeGlobs: [INSTALL* README* LICENSE*]
    [goxc:archive-zip] 2015/04/02 02:23:07 ExcludeGlobs: [*.go]
    [goxc:archive-zip] 2015/04/02 02:23:07 Artifact(s) archived to /Users/pksunkara/Coding/pksunkara/whitespaces/build/1.1.1/whitespaces_1.1.1_darwin_amd64.zip
    [goxc:archive-zip] 2015/04/02 02:23:07 Artifact(s) archived to /Users/pksunkara/Coding/pksunkara/whitespaces/build/1.1.1/whitespaces_1.1.1_darwin_386.zip
    [goxc:archive-zip] 2015/04/02 02:23:07 Globbing /Users/pksunkara/Coding/pksunkara/whitespaces/README.md for exclusion /Users/pksunkara/Coding/pksunkara/whitespaces/*.go
    [goxc:archive-zip] 2015/04/02 02:23:07 Globbing /Users/pksunkara/Coding/pksunkara/whitespaces/LICENSE for exclusion /Users/pksunkara/Coding/pksunkara/whitespaces/*.go
    [goxc:archive-zip] 2015/04/02 02:23:07 Resources to include: [README.md LICENSE]
    [goxc:archive-zip] 2015/04/02 02:23:07 Artifact(s) archived to /Users/pksunkara/Coding/pksunkara/whitespaces/build/1.1.1/whitespaces_1.1.1_freebsd_386.zip
    [goxc:archive-zip] 2015/04/02 02:23:07 IncludeGlobs: [INSTALL* README* LICENSE*]
    [goxc:archive-zip] 2015/04/02 02:23:07 ExcludeGlobs: [*.go]
    [goxc:archive-zip] 2015/04/02 02:23:07 Globbing /Users/pksunkara/Coding/pksunkara/whitespaces/README.md for exclusion /Users/pksunkara/Coding/pksunkara/whitespaces/*.go
    [goxc:archive-zip] 2015/04/02 02:23:07 Globbing /Users/pksunkara/Coding/pksunkara/whitespaces/LICENSE for exclusion /Users/pksunkara/Coding/pksunkara/whitespaces/*.go
    [goxc:archive-zip] 2015/04/02 02:23:07 Resources to include: [README.md LICENSE]
    [goxc:archive-zip] 2015/04/02 02:23:07 Artifact(s) archived to /Users/pksunkara/Coding/pksunkara/whitespaces/build/1.1.1/whitespaces_1.1.1_freebsd_amd64.zip
    [goxc:archive-zip] 2015/04/02 02:23:07 IncludeGlobs: [INSTALL* README* LICENSE*]
    [goxc:archive-zip] 2015/04/02 02:23:07 ExcludeGlobs: [*.go]
    [goxc:archive-zip] 2015/04/02 02:23:07 Globbing /Users/pksunkara/Coding/pksunkara/whitespaces/README.md for exclusion /Users/pksunkara/Coding/pksunkara/whitespaces/*.go
    [goxc:archive-zip] 2015/04/02 02:23:07 Globbing /Users/pksunkara/Coding/pksunkara/whitespaces/LICENSE for exclusion /Users/pksunkara/Coding/pksunkara/whitespaces/*.go
    [goxc:archive-zip] 2015/04/02 02:23:07 Resources to include: [README.md LICENSE]
    [goxc:archive-zip] 2015/04/02 02:23:07 Artifact(s) archived to /Users/pksunkara/Coding/pksunkara/whitespaces/build/1.1.1/whitespaces_1.1.1_freebsd_arm.zip
    [goxc:archive-zip] 2015/04/02 02:23:07 IncludeGlobs: [INSTALL* README* LICENSE*]
    [goxc:archive-zip] 2015/04/02 02:23:07 ExcludeGlobs: [*.go]
    [goxc:archive-zip] 2015/04/02 02:23:07 Globbing /Users/pksunkara/Coding/pksunkara/whitespaces/README.md for exclusion /Users/pksunkara/Coding/pksunkara/whitespaces/*.go
    [goxc:archive-zip] 2015/04/02 02:23:07 Globbing /Users/pksunkara/Coding/pksunkara/whitespaces/LICENSE for exclusion /Users/pksunkara/Coding/pksunkara/whitespaces/*.go
    [goxc:archive-zip] 2015/04/02 02:23:07 Resources to include: [README.md LICENSE]
    [goxc:archive-zip] 2015/04/02 02:23:07 Artifact(s) archived to /Users/pksunkara/Coding/pksunkara/whitespaces/build/1.1.1/whitespaces_1.1.1_openbsd_386.zip
    [goxc:archive-zip] 2015/04/02 02:23:07 IncludeGlobs: [INSTALL* README* LICENSE*]
    [goxc:archive-zip] 2015/04/02 02:23:07 ExcludeGlobs: [*.go]
    [goxc:archive-zip] 2015/04/02 02:23:07 Globbing /Users/pksunkara/Coding/pksunkara/whitespaces/README.md for exclusion /Users/pksunkara/Coding/pksunkara/whitespaces/*.go
    [goxc:archive-zip] 2015/04/02 02:23:07 Globbing /Users/pksunkara/Coding/pksunkara/whitespaces/LICENSE for exclusion /Users/pksunkara/Coding/pksunkara/whitespaces/*.go
    [goxc:archive-zip] 2015/04/02 02:23:07 Resources to include: [README.md LICENSE]
    [goxc:archive-zip] 2015/04/02 02:23:07 Artifact(s) archived to /Users/pksunkara/Coding/pksunkara/whitespaces/build/1.1.1/whitespaces_1.1.1_openbsd_amd64.zip
    [goxc:archive-zip] 2015/04/02 02:23:07 IncludeGlobs: [INSTALL* README* LICENSE*]
    [goxc:archive-zip] 2015/04/02 02:23:07 ExcludeGlobs: [*.go]
    [goxc:archive-zip] 2015/04/02 02:23:07 Globbing /Users/pksunkara/Coding/pksunkara/whitespaces/README.md for exclusion /Users/pksunkara/Coding/pksunkara/whitespaces/*.go
    [goxc:archive-zip] 2015/04/02 02:23:07 Globbing /Users/pksunkara/Coding/pksunkara/whitespaces/LICENSE for exclusion /Users/pksunkara/Coding/pksunkara/whitespaces/*.go
    [goxc:archive-zip] 2015/04/02 02:23:07 Resources to include: [README.md LICENSE]
    [goxc:archive-zip] 2015/04/02 02:23:07 Artifact(s) archived to /Users/pksunkara/Coding/pksunkara/whitespaces/build/1.1.1/whitespaces_1.1.1_windows_386.zip
    [goxc:archive-zip] 2015/04/02 02:23:07 IncludeGlobs: [INSTALL* README* LICENSE*]
    [goxc:archive-zip] 2015/04/02 02:23:07 ExcludeGlobs: [*.go]
    [goxc:archive-zip] 2015/04/02 02:23:07 Globbing /Users/pksunkara/Coding/pksunkara/whitespaces/README.md for exclusion /Users/pksunkara/Coding/pksunkara/whitespaces/*.go
    [goxc:archive-zip] 2015/04/02 02:23:07 Globbing /Users/pksunkara/Coding/pksunkara/whitespaces/LICENSE for exclusion /Users/pksunkara/Coding/pksunkara/whitespaces/*.go
    [goxc:archive-zip] 2015/04/02 02:23:07 Resources to include: [README.md LICENSE]
    [goxc:archive-zip] 2015/04/02 02:23:07 Artifact(s) archived to /Users/pksunkara/Coding/pksunkara/whitespaces/build/1.1.1/whitespaces_1.1.1_windows_amd64.zip
    [goxc:archive-zip] 2015/04/02 02:23:07 IncludeGlobs: [INSTALL* README* LICENSE*]
    [goxc:archive-zip] 2015/04/02 02:23:07 ExcludeGlobs: [*.go]
    [goxc:archive-zip] 2015/04/02 02:23:07 Globbing /Users/pksunkara/Coding/pksunkara/whitespaces/README.md for exclusion /Users/pksunkara/Coding/pksunkara/whitespaces/*.go
    [goxc:archive-zip] 2015/04/02 02:23:07 Globbing /Users/pksunkara/Coding/pksunkara/whitespaces/LICENSE for exclusion /Users/pksunkara/Coding/pksunkara/whitespaces/*.go
    [goxc:archive-zip] 2015/04/02 02:23:07 Resources to include: [README.md LICENSE]
    [goxc:archive-zip] 2015/04/02 02:23:07 Artifact(s) archived to /Users/pksunkara/Coding/pksunkara/whitespaces/build/1.1.1/whitespaces_1.1.1_netbsd_386.zip
    [goxc:archive-zip] 2015/04/02 02:23:07 IncludeGlobs: [INSTALL* README* LICENSE*]
    [goxc:archive-zip] 2015/04/02 02:23:07 ExcludeGlobs: [*.go]
    [goxc:archive-zip] 2015/04/02 02:23:07 Globbing /Users/pksunkara/Coding/pksunkara/whitespaces/README.md for exclusion /Users/pksunkara/Coding/pksunkara/whitespaces/*.go
    [goxc:archive-zip] 2015/04/02 02:23:07 Globbing /Users/pksunkara/Coding/pksunkara/whitespaces/LICENSE for exclusion /Users/pksunkara/Coding/pksunkara/whitespaces/*.go
    [goxc:archive-zip] 2015/04/02 02:23:07 Resources to include: [README.md LICENSE]
    [goxc:archive-zip] 2015/04/02 02:23:07 Artifact(s) archived to /Users/pksunkara/Coding/pksunkara/whitespaces/build/1.1.1/whitespaces_1.1.1_netbsd_amd64.zip
    [goxc:archive-zip] 2015/04/02 02:23:07 IncludeGlobs: [INSTALL* README* LICENSE*]
    [goxc:archive-zip] 2015/04/02 02:23:07 ExcludeGlobs: [*.go]
    [goxc:archive-zip] 2015/04/02 02:23:07 Globbing /Users/pksunkara/Coding/pksunkara/whitespaces/README.md for exclusion /Users/pksunkara/Coding/pksunkara/whitespaces/*.go
    [goxc:archive-zip] 2015/04/02 02:23:07 Globbing /Users/pksunkara/Coding/pksunkara/whitespaces/LICENSE for exclusion /Users/pksunkara/Coding/pksunkara/whitespaces/*.go
    [goxc:archive-zip] 2015/04/02 02:23:07 Resources to include: [README.md LICENSE]
    [goxc:archive-zip] 2015/04/02 02:23:07 Artifact(s) archived to /Users/pksunkara/Coding/pksunkara/whitespaces/build/1.1.1/whitespaces_1.1.1_netbsd_arm.zip
    [goxc:archive-zip] 2015/04/02 02:23:07 IncludeGlobs: [INSTALL* README* LICENSE*]
    [goxc:archive-zip] 2015/04/02 02:23:07 ExcludeGlobs: [*.go]
    [goxc:archive-zip] 2015/04/02 02:23:07 Globbing /Users/pksunkara/Coding/pksunkara/whitespaces/README.md for exclusion /Users/pksunkara/Coding/pksunkara/whitespaces/*.go
    [goxc:archive-zip] 2015/04/02 02:23:07 Globbing /Users/pksunkara/Coding/pksunkara/whitespaces/LICENSE for exclusion /Users/pksunkara/Coding/pksunkara/whitespaces/*.go
    [goxc:archive-zip] 2015/04/02 02:23:07 Resources to include: [README.md LICENSE]
    [goxc:archive-zip] 2015/04/02 02:23:07 Artifact(s) archived to /Users/pksunkara/Coding/pksunkara/whitespaces/build/1.1.1/whitespaces_1.1.1_plan9_386.zip
    [goxc:archive-zip] 2015/04/02 02:23:07 IncludeGlobs: [INSTALL* README* LICENSE*]
    [goxc:archive-zip] 2015/04/02 02:23:07 ExcludeGlobs: [*.go]
    [goxc:archive-zip] 2015/04/02 02:23:07 Globbing /Users/pksunkara/Coding/pksunkara/whitespaces/README.md for exclusion /Users/pksunkara/Coding/pksunkara/whitespaces/*.go
    [goxc:archive-zip] 2015/04/02 02:23:07 Globbing /Users/pksunkara/Coding/pksunkara/whitespaces/LICENSE for exclusion /Users/pksunkara/Coding/pksunkara/whitespaces/*.go
    [goxc:archive-zip] 2015/04/02 02:23:07 Resources to include: [README.md LICENSE]
    [goxc:archive-zip] 2015/04/02 02:23:07 Artifact(s) archived to /Users/pksunkara/Coding/pksunkara/whitespaces/build/1.1.1/whitespaces_1.1.1_dragonfly_386.zip
    [goxc:archive-zip] 2015/04/02 02:23:07 IncludeGlobs: [INSTALL* README* LICENSE*]
    [goxc:archive-zip] 2015/04/02 02:23:07 ExcludeGlobs: [*.go]
    [goxc:archive-zip] 2015/04/02 02:23:07 Globbing /Users/pksunkara/Coding/pksunkara/whitespaces/README.md for exclusion /Users/pksunkara/Coding/pksunkara/whitespaces/*.go
    [goxc:archive-zip] 2015/04/02 02:23:07 Globbing /Users/pksunkara/Coding/pksunkara/whitespaces/LICENSE for exclusion /Users/pksunkara/Coding/pksunkara/whitespaces/*.go
    [goxc:archive-zip] 2015/04/02 02:23:07 Resources to include: [README.md LICENSE]
    [goxc:archive-zip] 2015/04/02 02:23:07 Artifact(s) archived to /Users/pksunkara/Coding/pksunkara/whitespaces/build/1.1.1/whitespaces_1.1.1_dragonfly_amd64.zip
    [goxc:archive-zip] 2015/04/02 02:23:07 IncludeGlobs: [INSTALL* README* LICENSE*]
    [goxc:archive-zip] 2015/04/02 02:23:07 ExcludeGlobs: [*.go]
    [goxc:archive-zip] 2015/04/02 02:23:07 Globbing /Users/pksunkara/Coding/pksunkara/whitespaces/README.md for exclusion /Users/pksunkara/Coding/pksunkara/whitespaces/*.go
    [goxc:archive-zip] 2015/04/02 02:23:07 Globbing /Users/pksunkara/Coding/pksunkara/whitespaces/LICENSE for exclusion /Users/pksunkara/Coding/pksunkara/whitespaces/*.go
    [goxc:archive-zip] 2015/04/02 02:23:07 Resources to include: [README.md LICENSE]
    [goxc:archive-zip] 2015/04/02 02:23:07 Artifact(s) archived to /Users/pksunkara/Coding/pksunkara/whitespaces/build/1.1.1/whitespaces_1.1.1_nacl_386.zip
    [goxc:archive-zip] 2015/04/02 02:23:07 IncludeGlobs: [INSTALL* README* LICENSE*]
    [goxc:archive-zip] 2015/04/02 02:23:07 ExcludeGlobs: [*.go]
    [goxc:archive-zip] 2015/04/02 02:23:07 Globbing /Users/pksunkara/Coding/pksunkara/whitespaces/README.md for exclusion /Users/pksunkara/Coding/pksunkara/whitespaces/*.go
    [goxc:archive-zip] 2015/04/02 02:23:07 Globbing /Users/pksunkara/Coding/pksunkara/whitespaces/LICENSE for exclusion /Users/pksunkara/Coding/pksunkara/whitespaces/*.go
    [goxc:archive-zip] 2015/04/02 02:23:07 Resources to include: [README.md LICENSE]
    [goxc:archive-zip] 2015/04/02 02:23:07 Artifact(s) archived to /Users/pksunkara/Coding/pksunkara/whitespaces/build/1.1.1/whitespaces_1.1.1_nacl_amd64p32.zip
    [goxc:archive-zip] 2015/04/02 02:23:07 IncludeGlobs: [INSTALL* README* LICENSE*]
    [goxc:archive-zip] 2015/04/02 02:23:07 ExcludeGlobs: [*.go]
    [goxc:archive-zip] 2015/04/02 02:23:07 Globbing /Users/pksunkara/Coding/pksunkara/whitespaces/README.md for exclusion /Users/pksunkara/Coding/pksunkara/whitespaces/*.go
    [goxc:archive-zip] 2015/04/02 02:23:07 Globbing /Users/pksunkara/Coding/pksunkara/whitespaces/LICENSE for exclusion /Users/pksunkara/Coding/pksunkara/whitespaces/*.go
    [goxc:archive-zip] 2015/04/02 02:23:07 Resources to include: [README.md LICENSE]
    [goxc:archive-zip] 2015/04/02 02:23:07 Artifact(s) archived to /Users/pksunkara/Coding/pksunkara/whitespaces/build/1.1.1/whitespaces_1.1.1_nacl_arm.zip
    [goxc:archive-zip] 2015/04/02 02:23:07 IncludeGlobs: [INSTALL* README* LICENSE*]
    [goxc:archive-zip] 2015/04/02 02:23:07 ExcludeGlobs: [*.go]
    [goxc:archive-zip] 2015/04/02 02:23:07 Globbing /Users/pksunkara/Coding/pksunkara/whitespaces/README.md for exclusion /Users/pksunkara/Coding/pksunkara/whitespaces/*.go
    [goxc:archive-zip] 2015/04/02 02:23:07 Globbing /Users/pksunkara/Coding/pksunkara/whitespaces/LICENSE for exclusion /Users/pksunkara/Coding/pksunkara/whitespaces/*.go
    [goxc:archive-zip] 2015/04/02 02:23:07 Resources to include: [README.md LICENSE]
    [goxc:archive-zip] 2015/04/02 02:23:07 Artifact(s) archived to /Users/pksunkara/Coding/pksunkara/whitespaces/build/1.1.1/whitespaces_1.1.1_solaris_amd64.zip
    [goxc:archive-zip] 2015/04/02 02:23:07 Task archive-zip succeeded
    [goxc:archive-tar-gz] 2015/04/02 02:23:07 Parallelizing archive-tar-gz for 3 platforms, using max 3 of 4 processors
    [goxc:archive-tar-gz] 2015/04/02 02:23:07 IncludeGlobs: [INSTALL* README* LICENSE*]
    [goxc:archive-tar-gz] 2015/04/02 02:23:07 ExcludeGlobs: [*.go]
    [goxc:archive-tar-gz] 2015/04/02 02:23:07 Globbing /Users/pksunkara/Coding/pksunkara/whitespaces/README.md for exclusion /Users/pksunkara/Coding/pksunkara/whitespaces/*.go
    [goxc:archive-tar-gz] 2015/04/02 02:23:07 Globbing /Users/pksunkara/Coding/pksunkara/whitespaces/LICENSE for exclusion /Users/pksunkara/Coding/pksunkara/whitespaces/*.go
    [goxc:archive-tar-gz] 2015/04/02 02:23:07 Resources to include: [README.md LICENSE]
    [goxc:archive-tar-gz] 2015/04/02 02:23:07 Artifact(s) archived to /Users/pksunkara/Coding/pksunkara/whitespaces/build/1.1.1/whitespaces_1.1.1_linux_386.tar.gz
    [goxc:archive-tar-gz] 2015/04/02 02:23:07 IncludeGlobs: [INSTALL* README* LICENSE*]
    [goxc:archive-tar-gz] 2015/04/02 02:23:07 ExcludeGlobs: [*.go]
    [goxc:archive-tar-gz] 2015/04/02 02:23:07 Globbing /Users/pksunkara/Coding/pksunkara/whitespaces/README.md for exclusion /Users/pksunkara/Coding/pksunkara/whitespaces/*.go
    [goxc:archive-tar-gz] 2015/04/02 02:23:07 Globbing /Users/pksunkara/Coding/pksunkara/whitespaces/LICENSE for exclusion /Users/pksunkara/Coding/pksunkara/whitespaces/*.go
    [goxc:archive-tar-gz] 2015/04/02 02:23:07 Resources to include: [README.md LICENSE]
    [goxc:archive-tar-gz] 2015/04/02 02:23:07 Artifact(s) archived to /Users/pksunkara/Coding/pksunkara/whitespaces/build/1.1.1/whitespaces_1.1.1_linux_amd64.tar.gz
    [goxc:archive-tar-gz] 2015/04/02 02:23:07 IncludeGlobs: [INSTALL* README* LICENSE*]
    [goxc:archive-tar-gz] 2015/04/02 02:23:07 ExcludeGlobs: [*.go]
    [goxc:archive-tar-gz] 2015/04/02 02:23:07 Globbing /Users/pksunkara/Coding/pksunkara/whitespaces/README.md for exclusion /Users/pksunkara/Coding/pksunkara/whitespaces/*.go
    [goxc:archive-tar-gz] 2015/04/02 02:23:07 Globbing /Users/pksunkara/Coding/pksunkara/whitespaces/LICENSE for exclusion /Users/pksunkara/Coding/pksunkara/whitespaces/*.go
    [goxc:archive-tar-gz] 2015/04/02 02:23:07 Resources to include: [README.md LICENSE]
    [goxc:archive-tar-gz] 2015/04/02 02:23:07 Artifact(s) archived to /Users/pksunkara/Coding/pksunkara/whitespaces/build/1.1.1/whitespaces_1.1.1_linux_arm.tar.gz
    [goxc:archive-tar-gz] 2015/04/02 02:23:07 Task archive-tar-gz succeeded
    [goxc:deb] 2015/04/02 02:23:07 WARNING - no debian 'control' file found. Use `debber` to generate proper debian metadata
    [goxc:deb] 2015/04/02 02:23:07 Wrote deb to /Users/pksunkara/Coding/pksunkara/whitespaces/build/1.1.1/whitespaces_1.1.1_i386.deb
    [goxc:deb] 2015/04/02 02:23:07 WARNING - no debian 'control' file found. Use `debber` to generate proper debian metadata
    [goxc:deb] 2015/04/02 02:23:07 Wrote deb to /Users/pksunkara/Coding/pksunkara/whitespaces/build/1.1.1/whitespaces_1.1.1_amd64.deb
    [goxc:deb] 2015/04/02 02:23:07 WARNING - no debian 'control' file found. Use `debber` to generate proper debian metadata
    [goxc:deb] 2015/04/02 02:23:07 Wrote deb to /Users/pksunkara/Coding/pksunkara/whitespaces/build/1.1.1/whitespaces_1.1.1_armhf.deb
    [goxc:deb] 2015/04/02 02:23:07 Task deb succeeded
    [goxc:deb-dev] 2015/04/02 02:23:07 WARNING - no debian 'control' file found. Use `debber` to generate proper debian metadata
    [goxc:deb-dev] 2015/04/02 02:23:07 Task deb-dev succeeded
    [goxc:rmbin] 2015/04/02 02:23:07 Task rmbin succeeded
    [goxc:downloads-page] 2015/04/02 02:23:07 Task downloads-page succeeded
    
  • [goxc] Failing build for Darwin on Go 1.15.x

    [goxc] Failing build for Darwin on Go 1.15.x

    Hey there,

    I am using the following command goxc -tasks 'xc archive' -bc 'darwin linux' -d "$RELEASES_PATH" -resources-include 'README*' -build-ldflags="-X github.com/weldpua2008/supraworker/cmd.GitCommit=${TRAVIS_TAG} "

    And with Go 1.15.x where they removed Darwin/386 I am getting:

    $ goxc -tasks 'xc archive' -bc 'darwin linux' -d "$RELEASES_PATH" -resources-include 'README*' -build-ldflags="-X github.com/weldpua2008/supraworker/cmd.GitCommit=${TRAVIS_TAG} "
    [goxc:xc] 2020/10/10 11:50:57 Parallelizing xc for 5 platforms, using max 1 of 2 processors
    [goxc:xc] 2020/10/10 11:50:57 WARNING: LdFlagsXVars is nil. Not passing package version into compiler
    cmd/go: unsupported GOOS/GOARCH pair darwin/386
    [goxc:xc] 2020/10/10 11:50:57 'go' returned error: Wait error: exit status 2: cmd/go: unsupported GOOS/GOARCH pair darwin/386
    [goxc:xc] 2020/10/10 11:50:57 Error: Wait error: exit status 2: cmd/go: unsupported GOOS/GOARCH pair darwin/386
    [goxc:xc] 2020/10/10 11:50:57 Have you run `goxc -t` for this platform (386,darwin)???
    [goxc:xc] 2020/10/10 11:50:57 WARNING: LdFlagsXVars is nil. Not passing package version into compiler
    [goxc:xc] 2020/10/10 11:51:28 WARNING: LdFlagsXVars is nil. Not passing package version into compiler
    [goxc:xc] 2020/10/10 11:51:58 WARNING: LdFlagsXVars is nil. Not passing package version into compiler
    [goxc:xc] 2020/10/10 11:51:59 WARNING: LdFlagsXVars is nil. Not passing package version into compiler
    [goxc:xc] 2020/10/10 11:52:29 Multiple errors (returning first one): [Wait error: exit status 2: cmd/go: unsupported GOOS/GOARCH pair darwin/386]
    [goxc:xc] 2020/10/10 11:52:29 Stopping after 'xc' failed with error 'Wait error: exit status 2: cmd/go: unsupported GOOS/GOARCH pair darwin/386'
    [goxc] 2020/10/10 11:52:29 RunTasks error: Wait error: exit status 2: cmd/go: unsupported GOOS/GOARCH pair darwin/386
    The command "goxc -tasks 'xc archive' -bc 'darwin linux' -d "$RELEASES_PATH" -resources-include 'README*' -build-ldflags="-X github.com/weldpua2008/supraworker/cmd.GitCommit=${TRAVIS_TAG} "" failed and exited with 1 during .
    
    

    the temporary solution was to use 1.14.x

  • [goxc] 2018/10/01 15:04:59 RunTasks error: Wait error: exit status 2 vendor/gopkg.in/goracle.v2

    [goxc] 2018/10/01 15:04:59 RunTasks error: Wait error: exit status 2 vendor/gopkg.in/goracle.v2

    Hi, Try to create a build and getting following errors.

    vendor/gopkg.in/goracle.v2/orahlp.go:65:2: undefined: describeOnly vendor/gopkg.in/goracle.v2/orahlp.go:228:26: undefined: PlSQLArrays vendor/gopkg.in/goracle.v2/orahlp.go:251:32: undefined: VersionInfo vendor/gopkg.in/goracle.v2/orahlp.go:254:10: undefined: VersionInfo vendor/gopkg.in/goracle.v2/orahlp.go:260:32: undefined: VersionInfo vendor/gopkg.in/goracle.v2/orahlp.go:277:19: undefined: VersionInfo vendor/gopkg.in/goracle.v2/orahlp.go:278:30: undefined: ObjectType vendor/gopkg.in/goracle.v2/orahlp.go:279:31: undefined: Event vendor/gopkg.in/goracle.v2/orahlp.go:279:41: undefined: Subscription vendor/gopkg.in/goracle.v2/orahlp.go:289:27: undefined: conn vendor/gopkg.in/goracle.v2/orahlp.go:254:10: too many errors

    ======= Host env details ====== MAC OS: x86_64 16.7.0 Darwin Kernel Version 16.7.0

    go env

    GOARCH="amd64" GOBIN="" GOCACHE="/Users/206062/Library/Caches/go-build" GOEXE="" GOHOSTARCH="amd64" GOHOSTOS="darwin" GOOS="darwin" GOPATH="/Users/206062/git/go" GORACE="" GOROOT="/usr/local/Cellar/go/1.10.2/libexec" GOTMPDIR="" GOTOOLDIR="/usr/local/Cellar/go/1.10.2/libexec/pkg/tool/darwin_amd64" GCCGO="gccgo" CC="clang" CXX="clang++" CGO_ENABLED="1" CGO_CFLAGS="-g -O2" CGO_CPPFLAGS="" CGO_CXXFLAGS="-g -O2" CGO_FFLAGS="-g -O2" CGO_LDFLAGS="-g -O2" PKG_CONFIG="pkg-config" GOGCCFLAGS="-fPIC -m64 -pthread -fno-caret-diagnostics -Qunused-arguments -fmessage-length=0 -fdebug-prefix-map=/var/folders/y8/332tkm8n2vlg_z15c0nnyy_xs0ccb_/T/go-build596531477=/tmp/go-build -gno-record-gcc-switches -fno-common"

    gcc version

    Configured with: --prefix=/Library/Developer/CommandLineTools/usr --with-gxx-include-dir=/usr/include/c++/4.2.1 Apple LLVM version 9.0.0 (clang-900.0.39.2) Target: x86_64-apple-darwin16.7.0 Thread model: posix InstalledDir: /Library/Developer/CommandLineTools/usr/bin

  • gofmt

    gofmt

    Just ran

    gofmt -w .
    

    on the project root. That's all.

    https://blog.golang.org/go-fmt-your-code


    I made this PR with a project going on over at https://github.com/rotblauer/gofmt-att, and it's definitely a work in progress. So if I got something wrong, or this is annoying at all, please file an issue over there and we'll sort it out.

  • Simplify for Go 1.5+ world

    Simplify for Go 1.5+ world

    Hey there- @18F are big users of this tool. We distribute our binaries via GitHub releases, so the uploading part is a very useful for us. As you say in the README,

    Ever since Go1.5 supported simple cross-compilation, this tool lost much of its value. There are still many aspects of goxc which I'm very proud of, and some packaging features in particular, which are still useful.

    I'm wondering if you would consider (a pull request for) taking out the low-level cross-compilation bits, possibly even delegating to a more specific tool like gox for the higher-level ones, and making goxc focus on everything above that? Thanks!

Related tags
Ubuntu packaging of conainerd. :D
Ubuntu packaging of conainerd. :D

containerd is an industry-standard container runtime with an emphasis on simplicity, robustness and portability. It is available as a daemon for Linux

Nov 14, 2021
Simple CLI tool and Kubernetes deployment.

Simple Application A basic example of how to build a naml project. app.go Every project should define an app.go file. The file should implement the De

Dec 21, 2022
A Go based deployment tool that allows the users to deploy the web application on the server using SSH information and pem file.

A Go based deployment tool that allows the users to deploy the web application on the server using SSH information and pem file. This application is intend for non tecnhincal users they can just open the GUI and given the server details just deploy.

Oct 16, 2021
Super simple deployment tool

Dropship Dropship is a simple tool for installing and updating artifacts from a CDN. Features Automatically performs md5sum checks of artifact that is

Oct 4, 2022
Zdeploy - Deployment file tool with golang

zdeploy 中文 Deployment file tool Transfer deployment files Provide shell/bat exec

Sep 22, 2022
Build Go Toolchains /w native libs for cross-compilation

gonative Cross compiled Go binaries are not suitable for production applications because code in the standard library relies on Cgo for DNS resolution

Dec 20, 2022
provider-kubernetes is a Crossplane Provider that enables deployment and management of arbitrary Kubernetes objects on clusters

provider-kubernetes provider-kubernetes is a Crossplane Provider that enables deployment and management of arbitrary Kubernetes objects on clusters ty

Dec 14, 2022
expose controller, when deployment created service and ingress will be created

expose-controller expose controller, when deployment created service and ingress will be created How to test git clone repository cd expose-controller

Dec 23, 2021
Linux provisioning scripts + application deployment tools. Suitable for self-hosting and hobby-scale application deployments.

Apollo Linux provisioning scripts + application deployment tools. Suitable for self-hosting and hobby-scale application deployments. Philosophy Linux-

Feb 7, 2022
Kubernetes Operator for a Cloud-Native OpenVPN Deployment.

Meerkat is a Kubernetes Operator that facilitates the deployment of OpenVPN in a Kubernetes cluster. By leveraging Hashicorp Vault, Meerkat securely manages the underlying PKI.

Jan 4, 2023
Access your Kubernetes Deployment over the Internet
Access your Kubernetes Deployment over the Internet

Kubexpose: Access your Kubernetes Deployment over the Internet Kubexpose makes it easy to access a Kubernetes Deployment over a public URL. It's a Kub

Dec 5, 2022
Kubernetes workload controller for container image deployment

kube-image-deployer kube-image-deployer는 Docker Registry의 Image:Tag를 감시하는 Kubernetes Controller입니다. Keel과 유사하지만 단일 태그만 감시하며 더 간결하게 동작합니다. Container, I

Mar 8, 2022
Secure Distributed Thanos Deployment using an Observability Cluster

Atlas Status: BETA - I don't expect breaking changes, but still possible. Atlas, forced by Zeus to support the heavens and the skies on his shoulders.

Jun 11, 2022
Cdk-ecr-deployment - CDK Contruct for publishing ECR Images

cdk-ecr-deployment CDK construct to deploy docker image to Amazon ECR ⚠️ Please

Dec 30, 2021
Pega-deploy - Pega deployment on Kubernetes

Pega deployment on Kubernetes This project provides Helm charts and basic exampl

Jan 30, 2022
Kubernetes Operator to automate Helm, DaemonSet, StatefulSet & Deployment updates
Kubernetes Operator to automate Helm, DaemonSet, StatefulSet & Deployment updates

Keel - automated Kubernetes deployments for the rest of us Website https://keel.sh Slack - kubernetes.slack.com look for channel #keel Keel is a tool

Dec 28, 2022
Fast cross-platform HTTP benchmarking tool written in Go

bombardier bombardier is a HTTP(S) benchmarking tool. It is written in Go programming language and uses excellent fasthttp instead of Go's default htt

Jan 2, 2023
:rocket: Modern cross-platform HTTP load-testing tool written in Go
:rocket: Modern cross-platform HTTP load-testing tool written in Go

English | 中文 Cassowary is a modern HTTP/S, intuitive & cross-platform load testing tool built in Go for developers, testers and sysadmins. Cassowary d

Dec 29, 2022