The goal is to preserve the container.input interface so that custom
images can be specified, as per yarn/test/test.cue while keeping the
initial fix for https://github.com/dagger/dagger/issues/1670
Signed-off-by: Gerhard Lazu <gerhard@lazu.co.uk>
If multiple yarn.#Run commands run in parallel, they will corrupt each
other's yarn cache mount. Because we extract yarn install into a
separate step, LLB will dedup the yarn install step and only run it
once, regardless how many yarn.#Run commands run in parallel.
Fixes https://github.com/dagger/dagger/issues/1670
Signed-off-by: Gerhard Lazu <gerhard@lazu.co.uk>
- 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>
- Improve #Container with a better docker.#Run integration
- Supports concurrency caching in #Container
- Simplify code maintainability and readability
- Simplify binary export in #Build
- Support multi binary building
- External #Version management
Signed-off-by: Vasek - Tom C <tom.chauveau@epitech.eu>
Definition are now split in their own file.
`#Image` is a simple base image to set up a go container
`#Container` is a standalone environment to execute go command, any go command
should use this definition.
It shares `docker.#Run` fields to easily maintains this definition.
`#Build` and `#Test` are high level definition that use `#Container` to
execute common go operation in a CI.
Those definitions are tested with a simple greeting package.
Signed-off-by: Vasek - Tom C <tom.chauveau@epitech.eu>
* Remove mandatory 'cache' field
* New 'name' field to customize cache IDs instead
* Simplify and expand tests
Signed-off-by: Solomon Hykes <solomon@dagger.io>
* Script is written to filesystem, not inlined as argument
* Pass script either as string, or directory+filename
Signed-off-by: Solomon Hykes <solomon@dagger.io>
* `cmd` is renamed to `command` for readability
* `script` is removed. Feature moves up the stack (bash.#Run,
python.#Run)
Signed-off-by: Solomon Hykes <solomon@dagger.io>
This change "collapses" together log "groups" containing hidden fields
for the TTY logger.
e.g. `actions.foo._a` and `actions.foo_b` will show up as a combined `actions.foo`.
Caveats: Since we don't know in advance how many tasks are in a group, the state will change back and forth.
For each task in a group, the state will transition from computing to complete (e.g. blue to green), then back to computing and so on.
The transition is fast enough not to be visibile.
Signed-off-by: Andrea Luzzardi <aluzzardi@gmail.com>
We fixed a few issues with @shykes & @jlongtine, and @talentedmrjones
gave us this great command to run:
cd pkg/universe.dagger.io/examples/changelog.com/highlevel
dagger up --europa ./gerhard --log debug --log-format plain
7:42PM DBG system | detected buildkit config haveHostNetwork=true isActive=true version=v0.9.3
7:42PM DBG system | loading plan args=[
"./gerhard/"
]
7:42PM DBG system | vendoring packages mod=/Users/gerhard/github.com/gerhard/dagger/pkg/universe.dagger.io
7:42PM DBG system | spawning buildkit job attrs=null localdirs={
"/Users/gerhard/github.com/thechangelog/changelog.com/": "/Users/gerhard/github.com/thechangelog/changelog.com"
}
7:42PM INF actions.test.db.pull._op | computing
7:42PM INF actions.test.run._exec | computing
7:42PM INF inputs.directories.app | computing
7:42PM INF actions.dev.build._dag."0"._op | computing
7:42PM INF actions.test.build._dag."0"._op | computing
7:42PM ERR actions.test.run._exec | failed: invalid FS at path "actions.test.run._exec.input": FS is not set duration=0s
7:42PM DBG inputs.directories.app | loading local directory path=/Users/gerhard/github.com/thechangelog/changelog.com/
7:42PM ERR actions.dev.build._dag."0"._op | canceled duration=0s
7:42PM ERR actions.test.db.pull._op | canceled duration=0s
7:42PM ERR actions.test.build._dag."0"._op | canceled duration=0s
7:42PM ERR inputs.directories.app | canceled duration=0s
7:42PM FTL system | failed to up environment: task failed: actions.test.run._exec: invalid FS at path "actions.test.run._exec.input": FS is not set
The next step is to figure out why this is failing @jlongtine.
Signed-off-by: Gerhard Lazu <gerhard@lazu.co.uk>
- Each package can include its own bats file (e.g. `universe.dagger.io/yarn/test/yarn.bats`)
- universe.dagger.io includes a common bash helper file
- bats is installed/launched through yarn with minimal setup
- shellcheck is done across the entire repo
- Integrated into our CI
Signed-off-by: Andrea Luzzardi <aluzzardi@gmail.com>