This repository has been archived on 2024-04-08. You can view files and clone it, but cannot push or open issues or pull requests.
dagger/pkg/universe.dagger.io/go/build.cue
Andrea Luzzardi 3e8c9379b5 universe: go: improve cache management
Signed-off-by: Andrea Luzzardi <aluzzardi@gmail.com>
2022-04-04 15:33:33 -07:00

57 lines
834 B
CUE

package go
import (
"dagger.io/dagger"
)
// Build a go binary
#Build: {
// Source code
source: dagger.#FS
// Target package to build
package: *"." | string
// Target architecture
arch?: string
// Target OS
os?: string
// Build tags to use for building
tags: *"" | string
// LDFLAGS to use for linking
ldflags: *"" | string
env: [string]: string
container: #Container & {
"source": source
"env": {
env
if os != _|_ {
GOOS: os
}
if arch != _|_ {
GOARCH: arch
}
}
command: {
name: "go"
args: [package]
flags: {
build: true
"-v": true
"-tags": tags
"-ldflags": ldflags
"-o": "/output/"
}
}
export: directories: "/output": _
}
// Directory containing the output of the build
output: container.export.directories."/output"
}