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/container.cue
Tom Chauveau 1e384c4e9a
Apply Solomon comments
- Simplify cache id parameter with a field `name`
- Configure GOOS & GOARCH values
- Container image can now be overridden
- Simplify build export

Signed-off-by: Vasek - Tom C <tom.chauveau@epitech.eu>
2022-02-18 15:30:34 +01:00

45 lines
700 B
CUE

// Go operation
package go
import (
"dagger.io/dagger"
"universe.dagger.io/docker"
)
// A standalone go environment to run go command
#Container: {
// Container app name
name: *"go_builder" | string
// Source code
source: dagger.#FS
// Use go image
_image: #Image
_sourcePath: "/src"
_cachePath: "/root/.cache/gocache"
docker.#Run & {
input: *_image.output | docker.#Image
workdir: "/src"
command: name: "go"
mounts: {
"source": {
dest: _sourcePath
contents: source
}
"go assets cache": {
contents: dagger.#CacheDir & {
id: "\(name)_assets"
}
dest: _cachePath
}
}
env: {
CGO_ENABLED: "0"
GOMODCACHE: _cachePath
}
}
}