#github-feed
1 messages ยท Page 27 of 1
When specifying actions with quoted identifiers in the plan such as:
actions: "build-image": _
The help of dagger do will be:
Available Actions:
build
"build-image"
...
Which is a bit strange for a CLI action.
This patch will try to unquote action names if they are.
Signed-off-by: Jean-Philippe Braun
Bumps github.com/moby/buildkit from 0.10.2 to 0.10.3.
Release notes
Sourced from github.com/moby/buildkit's releases.
v0.10.3
https://hub.docker.com/r/moby/buildkit
Notable changes:
Update the builtin Dockerfile frontend to 1.4.2 including a fix for image build contexts
Fix performance regression in builtin Dockerfile frontend on accessing build options #2850
Commits
c8d25d9 Merge pull request #2851 from tonistiigi/picks-v0.10.3
4d4d9cd Resolve dock...
Looking at the code, it appears that dagger project update is only vendoring the built-in packages, not making sure the external packages are installed.
As a first step on #2163, we should at least make sure that there's consistency in the project update command in regards to built-ins and external dependencies because we're already documenting its usage like this.
NOTE: This uses the full git commit rather than the short commit we use today
What is the issue?
When using a non-core (e.g. universe) package, it takes some digging to discover which Definitions a specific package embeds and uses. Given that this use-vs-embed distinction is important, and defines which fields the user must provide concrete definitions for, vs those that are available to use if the user wishes, it would be useful if packages made their external interface more discoverable and more obvious.
One easy way to make it more obvious would be to plac...
Implement #Delete definition to kubernetes.
To avoid duplication, this commit also implement a private base definition
and simplify current #Apply and #Delete
Signed-off-by: Vasek - Tom C
What is the issue?
In the FAQ comparing this to other types of software there is one missing, https://earthly.dev/. This other app seems to do the exact same thing as dagger, but how is it different? How does daggers features compare? Does anyone have experience in both?
This addresses an issue where the start step execParamsTest was using a
constant cache mount id which was also used by a totally different test.
This made it possible for these tests to interfere with each other.
This also fixes an issue where because we were setting "always" to true
in the sync exec, if the sync exec started before the async one, it would
end up with a not-actually-shared-mount (due to some bizarre but
expected behavior in BuildKit).
The commit fixes all of the ab...
Bumps cypress from 9.6.0 to 9.6.1.
Release notes
Sourced from cypress's releases.
9.6.1
Released 5/9/2022
Bugfixes:
Cypress can now launch on systems where Firefox is installed via Snapcraft.
Fixed #19793.
Updates were made to ensure XHR calls are properly displaying the response
body in the command log. Fixed
#21361.
Fixed cy.contains() and
.should(https://github.com/cypress-io/cypress/blob/HEAD/'contain', ...) to handle finding text that
contains ...
What is the issue?
This are great docs for interacting with a docker socket on the client
- https://docs.dagger.io/1203/client/#using-a-local-socket
- https://docs.dagger.io/1216/docker-cli-load/
but users might not know to look for these when they're getting an error like from sam build:
Error: Building image for LambdaFunction requires Docker. is Docker running?
We should explain a bit more when/why you might use this approach generally.
Not sure if there are ot...
Since we support creating files and directory with core.#WriteFile and core.#Mkdir, it's logic to also supports his reverse : remove files or dir.
Resolves https://github.com/dagger/dagger/issues/2408
Signed-off-by: Vasek - Tom C
Question: How should we update core type reference or dagger-cue since this definition is not release for now?
Concourse would be amazing, seeing as it's modern, built for CD, able to handle extreme complexity and is not tied to a provider.
Fixes https://github.com/dagger/dagger/issues/2413
Overview
I've been assuming that:
dagger project updateinstalls both built-in and external packages- When installing an external package that's already in
dagger.sumthe checksum is being checked
It's how I think it should work and both turned out be wrong, as I've realized in:
Before
dagger project update- Copies built-ins from...
There's been a few issues around the limitation of choosing to add flags to the dagger do command that may conflict with the target action's input flags.
How about using a -- to separate command flags from input flags?
dagger do --
Is it possible to split those, so that the command's flags would also only get what's before --?
Example of a (resolved) conflict:
$ dagger do test --param -- --param "foo"
Inspired by yarn and npm.
What if, in addition to dagger do , we could also type dagger for actions that don't clash with built-in command names?
dagger do deploy --prod
dagger deploy --prod
The inspiration comes from yarn/npm which do the same:
yarn run build
yarn build ## build is actually not a yarn command
This would take one step further the "action inputs as flags" initiative: the entire command becomes user configurable.
The downside is clash with built-...
I can see the appeal, but this feature is like a one-way door: once we cross it, we can never go back. At this early stage I don't have enough confidence that we wouldn't regret it...
I suggest that we leave this on the shelf and revisit in a few months.
I like this idea, but given the difficulty reversing this decision, it seems reasonable to tap the brake and revisit in a bit.
The DAGGER_CACHE_{FROM,TO} env vars are set by a GHA step and
previously were just passed transparently to our integ tests. However,
after updating those tests to run in dagger, they were not being passed
along anymore.
This just updates ci.cue to explicitly pass them to the integ test
invocation.
In the long-term, it would probably be better to move the setting of
these env vars from a GHA step to within ci.cue. However, right now
since porting the universe tests to run inside da...
What are you trying to do?
Exporting dagger.#Secret directly from export.
For instance
cmd1: docker.#Run & {
// Command stuff
export: secrets: "/secrets.txt": dagger.#Secret
}
cm2: docker.#Run & {
// Command Stuff
env: SECRET: cm1.export.secrets."/secrets.txt
}
Why is this important to you?
https://github.com/dagger/dagger/pull/2395 is an experimental package for 1password/.
This package required to export secrets as output.
How are you...
What is the issue?
Encountered this while testing CI things in my fork. Seems to be related to cue, but I was not changing anything in dagger code itself (just ci configs):
3:12AM INF actions.test.integration._dag."10"._exec | #26 100.5 not ok 19 plan/client/env optional unset
3:12AM INF actions.test.integration._dag."10"._exec | #26 100.5 # (in test file ./plan.bats, line 207)
3:12AM INF actions.test.integration._dag."10"._exec | #26 100.5 # `"$DAGGER" "do" -p ./plan/client/en...
Add an example and guide in docs that how we can write CICD files in javascript with dagger?
As https://docs.dagger.io/1235/what#how-does-it-work this para says that.
@codecycleteam do you have any javascript scripts or a javascript-based tool/platform that you use today in a CI or deploy process? Looking for good example to use for this suggestion. The example depicted above is basically the Netlify package which uses a shell script that gets executed in a container: https://github.com/dagger/dagger/blob/main/pkg/universe.dagger.io/netlify/netlify.cue#L60-L69
I've se...
docker.#Run can use export field to export files or directories from the
container.
With this commit, it will also be possible to export #Secret.
This will simplify action, like onepassword in #2395.
Resolves #2428
Signed-off-by: Vasek - Tom C
Overview
Upstream
As per #2163 we plan on adopting the upcoming solution from upstream CUE for package management. That solution is modeled closely to how it works in Go. Right now we only have one module field in cue.mod/module.cue, but in the future that file will include everything from a go.mod file, e.g., require, replace, retract, etc.. but with a CUE syntax. It will also have a cue.mod/sum.cue file for checksums...
We have discussed using JS instead of shell scripts for some actions where JS is the first-class development environment.
Example: Netlify has a first-class javascript client, we should use that instead of wrapping their CLI in a shell script. Could be a good reference implementation at the same time :)
cc @aluzzardi who proposed this
This is a continuation of the work done on the PR #2234
I have added minor changes like the installation of all the packages within the same layer.
Signed-off-by: Luis Torres
cue fmt -s aka --simplify in linter is confusing for users making PRs with valid CUE code that doesn't pass.
https://github.com/dagger/dagger/pull/2433#issuecomment-1124550442
If this is important to us, it should be be documented somewhere like https://docs.dagger.io/1226/coding-style and users need better feedback/error messages in GitHub.
cc @samalba
Implementation of an AWS Sam package.
Why?
I've missed an easy approach to build and deploy Lambda Functions with Dagger. Which is essential for our environment.
What are you trying to do?
Provide core.#EnvVar as client.env did, but could use in pre-defined task like core.#Source did.
Why is this important to you?
Now we have to define all env var in client.env
#GoBuild: {
docker.#Run & {
env: _
}
}
dagger.#Plan & {
client: {
platform: _
env: {
GOPROXY: string | *""
GOPRIVATE: string | *""
GOSUMDB: string | *""
}
}
...
What is the issue?
The documentation says:
With Docker running, we are ready to download our example app and run its CI/CD pipeline locally:
git clone https://github.com/dagger/dagger cd dagger git checkout v0.2.9 cd pkg/universe.dagger.io/examples/todoapp dagger do build
The dagger do build command fails for me:
~/dagger/pkg/universe.dagger.io/examples/todoapp #v0.2.9 โฏ dagger do build
failed to load plan: package "universe.dagger.io...
Filed on behalf of Luis T#1639 on Discord:
Hello, I have a question regarding the use of the core.#Cache, what I am trying to do is to create an action that accepts cache as field and pass that field to docker.#Run actions, but can't get it to work, I get an error of empty disjunction.
If instead I create the cache inside the action it works, any recommendation is well appreciated ๐package vscode import ( "dagger.io/dagger" "dagger.io/dagger/core" ...
This sets up Jaeger to run inside GHA during integration tests,
instruments dagger and buildkit to write to it and exports the resulting
data as an artifact of the run.
This enables us to get insight into what actually happened during our CI
runs, which is helpful for debugging and getting insight into the
performance of caching.
Jaeger seems to be mostly designed for "live" use, but it has an
experimental mode for persisting its data to disk, which I use here to
enable exporting ...
This is a follow-up of PR #2284
It adds integration tests for:
- documentation
- universe packages
Closes #1522
Hi all!
I'm David Aronchick, and I co-founded Kubeflow. I'm really excited about the opportunity that Dagger is taking on - it's so important to abstract away the details of the orchestration system.
One thing I'm working on right now is an abstraction for ML - specifically taking a Jupyter notebook and pushing it to a number of different backends - it's about to hit 0.2, called the Same Project (https://sameproject.ml/).
Right now, we hardwire in every backend necessary for executi...
Bumps go.opentelemetry.io/otel/exporters/jaeger from 1.4.1 to 1.7.0.
Release notes
Sourced from go.opentelemetry.io/otel/exporters/jaeger's releases.
Release v1.6.3
Fixed
Allow non-comparable global MeterProvider, TracerProvider, and TextMapPropagator types to be set. (#2772, #2773)
Release v1.6.2
1.6.2 - 2022-04-06
Changed
Don't panic anymore when setting a global TracerProvider or TextMapPropagator to itself. (#2749)
Upgrade go.open...
Bumps amplitude-js from 8.18.1 to 8.18.2.
Changelog
Sourced from amplitude-js's changelog.
8.18.2 (2022-05-12)
Bug Fixes
assign domain after cookie storage options are given (#528) (2440e9a)
fix perms for github token in release workflow (#532) (195c6ef)
fix release work flow perms to include write access to contents (#533) (c8845ca)
replace String.prototype.includes with String.prototype.indexOf (#530) (b0992f8)
update analytics connect...
What are you trying to do?
I would like to introduce bitbucket on your feature to help manage tasks.
Why is this important to you?
I find bitbucket so cool especially when it comes to pipelines handling.
How are you currently working around this?
am working with a team to improve and come up with a good plugin to collaborate and integrate the two tools for efficient deployment.
This package is named under gcp in order for it to later be completed
with more gcp features.
There is for now still a bug that appeared recently and wasn't present
like a month ago. It needs to be fixed, I just can't figure out how for
now and I'll appreciate any help.
Signed-off-by: Benjamin Reigner
Closes #2375
A new workflow has been created to run the experimental packages "x" inside "universe.dagger.io".
This workflow is named test-experimental-universe.yml and its based on test-universe.yml.
The package.json in the "universe.dagger.io" folder has been modified to add another script to only test the experimental packages and the original "test" script now ignores the tests in folder "x".
Main Makefile has been modified to add a new task for this.
After reviewing...
Closes #2298
After looking in detail for the issue, I noticed that CUE is interpreting absolute paths as package names and not as "local packages".
Since the comment that for now dagger only supports local filesystem paths, I changed the funcion loadPlan to resolve the given path in arguments to a relative path from current working directory. I also checked if a single file is passed in the arguments to resolve this accordingly.
This relative path resolution allows CUE to load all ...
What are you trying to do?
Today, I can use dagger project init -t hello to create a new dagger plan file using a single template available from the upstream dagger repo.
I would like to be able to use template files defined in my own dagger project (or that of another user on github) so that the template can be tailored to my particular needs.
For example, I could run:
dagger project init -t github.com/foo/bar@main:myTemplate
Where myTemplate might match a file or ...
What is the issue?
On the page https://docs.dagger.io/1200/local-dev there is the console snippet:
where dagger
C:\\dagger.exe
It should be
where dagger
C:\\dagger\dagger.exe
Chiming in for ADO as well, as I've seen more and more clients using those.
I am trying to write a multi-stage dockerfile. I can't figure out how to set the port for the expose attribute. Any guidance or example would be appreciated.
docker.#Set & { config: { entrypoint: ["dotnet", "my.dll"] env: ASPNETCORE_URLS: "http://+:5000" expose: {} } }
The syntax is <port>/<protocol>: {}:
expose: โ8080/tcpโ: {}
Bumps google.golang.org/grpc from 1.46.0 to 1.46.2.
Release notes
Sourced from google.golang.org/grpc's releases.
Release v1.46.2
Bug Fixes
client: fix potential panic during RPC retries (#5323)
xds: fix leak of deleted CDS resources from CSDS view (#5339)
Commits
46da11b update version to 1.46.2
10b610c xdsclient/csds: fix leaked metadata (#5339)
1303098 client: fix potential panic during RPC retries (#5323)
beb2eaf Change version to 1.46.1-dev (#52...
Bumps concurrently from 7.0.0 to 7.2.0.
Release notes
Sourced from concurrently's releases.
v7.2.0
Support passthrough of additional arguments to commands via placeholders - #33, #282, #307
Add command-{name|index} and !command-{name|index} to --success - #280, #281, #318
New Contributors
@โpaescuj made their first contribution in #317 and #307
v7.1.0
Excluding pattern support added, e.g. concurrently npm:lint:*(!fix) (#305, #306)
Fixed...
This adds a new core.SendSignal task that enables arbitrary signals to
be sent to an async Start exec. It also adds related support to
core.Stop for specifying a timeout to wait for the exec to exit on its
own before sending SIGKILL.
The main goal here is to support ending Start execs gracefully instead
of being forced to always just SIGKILL them as part of core.Stop.
One immediate goal here to support running Jaeger via core.Start. It
needs to be shutdown gracefully (i.e. with SIG...
Problem
Dagger defines two slightly different concepts: "project" and "plan". This made sense in 0.1 with dagger up, but in 0.2 with dagger do, it is less needed and adds unnecessary complexity to the developer experience.
Solution
Merge the two concepts, and keep only word. I propose to keep the word "project" because it is more familiar to developers.
Details
How it works today
- A project is a shared context for developping and running Dagger actions. O...
Fix a major issue with Amplitude. Nothing has been logged during almost 2 months
Signed-off-by: user.email
This adds a makefile UNIVERSE_TESTDIR variable which, when set, will
be passed to find to filter the tests.
Example:
make universe-test UNIVERSE_TESTDIR=x
This will filter out anything under under the x dir in universe.
One can also set something like UNIVERSE_TESTDIR=x/ to test
only packages under a certain author or just UNIVERSE_TESTDIR=alpine
to test the main alpine pacakge.
Signed-off-by: Brian Goff
More recent versions of git include extra safety checks on the owner of
directories before doing any operations on them. This meant that various
calls to git would fail due to being copied from the host, where the
source code is most often not owned by root (the user in the container).
This fixes the issue by just telling git it's okay to use the /src
directory anyways.
Signed-off-by: Erik Sipsma
core.#Source is an important feature of the Dagger API, and it is not documented anywhere.
As requested by @siafu: "it would be great if you could explain when to use core.#Source versus client.filesystem.
- [ ] explain what exactly happens when running
dagger up - [ ] it isn't clear is
upcommands are ran sequentially or in parallel - [ ] document useful commands like:
dagger query,dagger input edit,dagger -l debug up --no-cache
Adding some more items:
Cue concepts
- [ ] Explain how to use intermediate (like a temporary variable) key in a config (store intermediate data in a definition to avoid this value to be exported in a
dagger query) - [x] Explain the different between a Cue builtin and a definition (native Cue vs dagger stdlib)
Dagger concepts
- [ ] Explain
dagger.#Artifact, why are they special, can be a docker image, a local directory of data, etc... - [ ] Explain how to use local c...
Also #1061
Good point, merged both issues.
To add some feedback
I personally find that the developer documentation is lacking a lot of stuff.
To compare it to dockerfile's documentation, the developer documentation is really complete and when you look for a certain instruction, you have few sentences to explain what it does and how to use it and to supplement this, there are few examples to show how to use it that truly help understand it all.
I think that dagger lacks that a lot and that makes dagger harder to take in hand.
A...
@samalba @talentedmrjones @gerhard Is this issue still relevant?
Most of those items are no more relevant to Europa but we'll still lack internals doc in the first version, I would keep this for the record until we replace it with something else that is more up to date.
Is this issue still relevant?
Yes. https://github.com/dagger/dagger/issues/1327#issuecomment-1027379003
Right now the stdout/stderr of an exec created with core.#Start is completely ignored. It needs to at minimum be included in the progress output by default, same as the output of normal core.#Execs, to enable basic debuggability.
Subtask of #2398
Problem
The Client API is causing a bad developer experience. Developers often report confusion about what itโs for and how it works. Common reasons for the confusion are:
- Unfamiliar. Unlike the core action API which works by applying action definitions, the client API works by setting values at a certain path under the
clientkey. - Inconsistent. Read and writes work very differently. ...
Generate CI pipelines based on actions
It would really help to generate the pipeline configurations yaml from the actions. Right now, we only have a list of commonly used CI environments here: https://docs.dagger.io/1201/ci-environment .
Hi Dagger Community!
We want to make the onramp to CUE easier for the community, so I'd like to collect feedback on exactly where you might be getting stuck.
Currently, we point the community to this documentation:
- Follow CUE's tutorial
- Get a quick understanding from Dagger's "What is CUE?" page
**Please let us know where you have been getting stuck in your CUE journey, and what type of documentation or ...
dagger do prints the actions' outputs on standard output.
If I want to pipe the outputs to a tool, like jq, I need to explicitly set the output format to json with --output-format json. But that format should be the default when I am piping the output. This is already what we do for logging: log format defaults to json when output is not a tty.
Currently if you redirect stdout via > outfiile or | jq or similar, you get all of the logs in json format from stderr dumped to the screen. Perhaps this is by design, but I was surprised by that given that I only wanted the output to pipe cleanly to jq. To declutter my screen I used standard redirect of stderr to /dev/null: 2>/dev/null.
Example:
From https://docs.dagger.io/1226/handling-outputs#piping-a-result or https://docs.dagger.io/1228/handling-outputs#piping-a-resul...
What are you trying to do?
Use remote cache import/export with a registry that requires credentials.
Why is this important to you?
User in discord asked about it (specifically wanted to read creds from env vars). Also just a basic, self-evidently needed feature.
How are you currently working around this?
No good workarounds that I'm aware of.
What is the issue?
Log output
Steps to reproduce
dagger project init
dagger project update
cd cue.mod/pkg/universe.dagger.io/x/solomon@dagger.io
ls
should be two package dirs like in GitHub: https://github.com/dagger/dagger/tree/main/pkg/universe.dagger.io/x/solomon%40dagger.io
spectral
yarn
``
but only one present
yarn
### Dagger version
0.2.11
### OS version
macOS 12.3.1 M1 Arm64
What is the issue?
Actions currently have some limitations that should be documented and kept up to date:
caveats:
- No support for dynamic actions (generate new actions from a conditional data generated at runtime)
- Actions tasks cannot be nested (#1343)
pattern:
- How to share code between actions (use of definitions or packages)
- Action grouping (group several actions under the same key name)
Problem
The "todoapp" tutorial used by the Getting Started Tutorial uses yarn, but does not use our own official yarn package (universe.dagger.io/yarn). Instead, it reimplements a custom version with hacks to work around limitations of the official package.
This causes two problems:
- The todoapp configuration is more complicated, and less readable, than it should be. This is especially bad because it is the very first example we show t...
This is a rewrite of the official yarn package. Improvements include:
- Usable by the example todoapp plan (which includes a custom inline implementation with hacks). See #2482
- More granular API
#Scriptto run a yarn script (yarn run ...)#Installto install dependencies (yarn install)#Commandto run any command (yarn ...)
- Proper use of yarn cache, configurable with project name
- App source code is mounted instead of copied (more efficient)
- Action con...
Just to add to this, there does not seem to be a way to "bubble up" logs from when commands are executed inside of a docker container. This is really important for diagnosing why a plan is going wrong.
package simple
import (
"dagger.io/dagger"
"universe.dagger.io/alpine"
"universe.dagger.io/docker"
)
dagger.#Plan & {
actions: {
image: alpine.#Build & {
packages: {}
}
run_simple: docker.#Run & {
input: ...
Signed-off-by: Kambui Nurse
Fixes #2474
Signed-off-by: Helder Correia
Bumps github.com/hashicorp/go-version from 1.4.0 to 1.5.0.
Release notes
Sourced from github.com/hashicorp/go-version's releases.
v1.5.0
Includes changeset from hashicorp/go-version#93 and hashicorp/go-version#95
Commits
1a9a0e4 Use encoding TextMarshaler & TextUnmarshaler instead json equivalents (#95)
82485a6 Add json handlers (#93)
45914be Readme: master -> main
50c7800 Update CHANGELOG.md
See full diff in compare view
[![Dependa...
Saving as a placeholder to collect all the core.#Start feedback in it's current state and future state. It will be tied into the core.#Start Epic #2398
Problem
The Dagger documentation don't have a standalone install page. There are installation instructions, but they are embedded/hidden inside the Getting Started tutorial.
Having a standalone install page, and ideally a easy-to-find location on the main website like "dagger.io/install" are tablestakes.
Solution
Create a standalone install page.
Problem
- Good:
dagger doruns action then prints its output fields. When the terminal is interactive, it prints them in a human-friendly table - Bad: the string values in the table are formatted as CUE strings. This makes them harder to read and use, especially multi-line strings (
\nare explicitely encoded).
Example:
$ dagger do build
[โ] actions.build ...
Problem
dagger prints most of its output via a standardized logger. This logger is great for producing machine-readable outputs, or sysadmin-friendly log files. But it makes the tool less pleasant to use compared to other command-line client tools. Prefixing every line with a cryptic loglevel code and timestamp, eg. 1:47AM FTL makes the UX worse.
Solution
Print regular outputs to the user like other regular command-line clients; without sacrificing the ability to produce g...
@nicolas-goudry Did you try it already? If yes, what have been your experiences?
I'm evaluating different CI/CD Frameworks to run on GitLab CI Kubernetes Executor so input would be helpful, thanks.
I think a CUE linter for VSCode, that highlights the parts with problems and a tooltip of what the error is, would go a long way. The next step would be some autocompletion based on the imports in the top of the file. This would significantly lower the barrier of getting started with CUE and Dagger in my opinion.
Hello, I have a couple of questions:
-
I have been checking a plan behavior using the tracing.compose.yaml but wanted to see if the span and trace id where logged, so far I can't see them even using the log-level trace, by design those values are not included there?
Why I am trying to do that? I wanted to play around with the grafana stack, in order to correlate the logs with the traces tempo tries to get the both values from the ingested logs. -
Why dagger output is streamed to st...
I think the CUE tutorial is relatively good. However what confused me at start is the relation between CUE and Dagger. A posteriori it looks obvious but it wasn't when I started. Knowing that I'm basically writing a JSON with some tooling (CUE) that then get interpreted by Dagger helped my mental model. To be honest, I'm still a little confused on how dagger generated fields work particularly when referencing them.
Bumps sass from 1.51.0 to 1.52.0.
Release notes
Sourced from sass's releases.
Dart Sass 1.52.0
To install Sass 1.52.0, download one of the packages below and add it to your PATH, or see the Sass website for full installation instructions.
Changes
Add support for arbitrary modifiers at the end of plain CSS imports, in addition to the existing supports() and media queries. Sass now allows any sequence of identifiers of functions after the URL of an i...
For reasons that are not clear to me at this time, when using the
dagger-debug binary to run universe tests, the new yarn test is
incredibly slow and usually times out after 30 minutes. But when using
the default dagger binary, it's relatively fast.
This needs to be understood better, but for now, running the universe
tests with the default binary will unblock our CI (which currently fails
on this yarn test consistently).
Signed-off-by: Erik Sipsma
@shykes The timeout yo...
Problem
dagger project update, with no arguments, vendors the entire content of universe.dagger.io in ./cue.mod/pkg/. This causes surprise, confusion and frustration for our developers.
Solution
Modify dagger project update to 1) load the cue project, 2) scan its dependencies, and 3) vendor only the universe packages that are imported.
FYI, we're currently working on a CUE LSP that should give all of that. :)
There was a change in client: filesystem in v0.2.11 so we need to bump the requirement. The change is backwards compatible but CUE and Go need to be in sync.
Signed-off-by: Helder Correia
Bumps concurrently from 7.2.0 to 7.2.1.
Release notes
Sourced from concurrently's releases.
v7.2.1
What's Changed
Fix --success command- syntax when command name has dashes - #324, #325
Commits
723d7c3 7.2.1
ecbc325 Fix command- syntax capturing for --success (#325)
6f1e11d Update dependencies & declare recommended extensions for VSCode (#320)
See full diff in compare view
[. dagger.mod isn't storing pseudo-versions for branches and in the case of dagger.sum it's also missing the version component.
Solution
I think there's stuff we can reuse from golang.org/x/mod to parse and write these files. Also, make sure to generate pseudo versions for branches.
Problem
CUE only looks for packages in cue.mod/{pkg,gen,usr} (merging these directories). This has required us to commit packages to git.
Solution
Checksums
We do have our own dagger.mod and dagger.sum files. We can make them good enough to be depended on to reinstall packages in new git clones like in CI. This makes committing cue.mod/pkg less necessary.
Global cache
We can take a hint from cuemod, which downloads ...
Our dagger.mod file only supports require directives. If we add support for replace, we can use it as a stop-gap for vanity URLs, but also as a better workflow for developing packages, without the need to manually setup links.
Examples:
universe.dagger.io => github.com/dagger/dagger/pkg/universe.dagger.ioexample.com => ~/work/dagger/my-package
Bumps amplitude-js from 8.18.2 to 8.18.3.
Changelog
Sourced from amplitude-js's changelog.
8.18.3 (2022-05-24)
Bug Fixes
upgrade to @โamplitude/ua-parser-js@โ0.7.31 (#535) (7756b52)
Commits
fe44356 chore(release): 8.18.3 [skip ci]
7756b52 fix: upgrade to @โamplitude/ua-parser-js@โ0.7.31 (#535)
See full diff in compare view
[.
For now, this just adds another logger which prints to stderr.
Next steps:
- only enable if the CLI is authenticated
- HTTP 1.1 POST to the API as JSON (ignore all errors)
- HTTP 2 POST (stream) to the API (ignore errors)
- maybe HTTP 2 POST to the API as GraphQL
Problem
To keep a project up to date on dependencies, there's a bit of manual work.
Solution
Add a new dagger project tidy command that does the following:
- Scan project imports
- Add missing requirements to
dagger.mod - Remove unused requirements from
dagger.mod - Do a
dagger project update(installs requirements, verifies checksums) - Remove stuff in
cue.mod/pkgthat's not being used, or from global cache - Cleanup
dagger.sum
With #2504 we have a stop-gap solution for this. If we feel we don't want to wait for upstream we can check ?cue-get=1 and fallback to ?go-get=1 like in CUE's proposal.
Then implement ?cue-get in dagger.io and universe.dagger.io.
Problem
I don't think we're able to install dependencies of dependencies right now (I'll check), which means we need to list everything directly In the project's dagger.mod.
Solution
Check the dependencies' dependencies and use the MVS algorithm on conflicting versions.
Problem
When downloading modules from cue.mod/dagger.mod, we have a regex that tries to match a repo prefix and path suffix from a URL. This has limited capability. It works well enough if you have .git to split them, or if it's GitHub, though.
As for authentication, it assumes a public repo (https) unless a --private-key argument is provided, in which case ssh is used. We need more authentication methods.
We could also benefit from downloading from import path, instead of j...
What is the issue?
After setting a workdir on the image config the #Copy steps writes to '/'. My assumption is that the #Copy and other commands would follow Dockerfile type guidance and respect workdir automatically.
Log output
4:17PM INF system | installing all packages...
4:17PM INF system | installed/updated package dagger.io@0.2.12
4:17PM INF system | installed/updated package universe.dagger.io@0.2.12
dagger do --plan workdir-copy.cue test --log-format=plain
4:22PM INF ...
This fixes failed "todoapp" test in main. The test fails because the todoapp example has been moved to a separate repo, see #2484 .
@ravilach I'd love to help update this to latest Dagger :)
What are you trying to do?
It would be great to be able to hook into the DAG created by dagger to create build steps in a Jenkins that align to visualize the progress of a long running job via Blue Ocean.
Why is this important to you?
Seeing the output visually is often helpful vs just seeing streaming text output.
How are you currently working around this?
I don't see a way to work around this currently. Everything just ends up in a single build step in Jenkins.
This defines:
- Strongly typed, versioned telemetry events
- Event format (base properties and event-specific properties)
- A few events as example
- Contextual plumbing to be able to push telemetry events from anywhere
- NOTE: this defines the plumbing and API for typed events, it's not actually pushing anything
Example to send an event:
// telemetry is available through the context (just like the logger)
tm := telemetry.Ctx(ctx)
// pushing a (strongly typed) even...
This PR adds support for workdir with the core.#Copy function. Closes #2512.
What's changed
- Added a new workdir field to core.#Copy
- Use the workdir field in
plan/task/copy.goto set the inputState.Dir to the working directory. - docker.#Copy sets the workdir field based on the image.config.workdir
*Test cases to verify copying with workdir, without workdir, and with workdir and absolute value.
I played with just cuelang modifications in the docker/build.cue file but had to...
I've managed to build a from-scratch docker container in dagger, but it feels a bit hacky.
I defined scratch by using a FROM SCRATCH repo that I pushed to docker hub:
#Scratch:{
build: {
docker.#Build&{
steps: [
docker.#Pull&{
source: "jcvz/scratch"
}
]
}
}
output: build.output
}
Then, in the full build, I call it as the first build step:
_build_doc...
docker.#Pull returns a docker.#Image, so you can call it directly:
#Scratch: docker.#Pull & {
source: "jcvz/scratch"
}
We could have a docker.#Scratch:
#Scratch: docker.#Image & {
rootfs: dagger.#Scratch
config: {}
}
But in the meantime you can easily do this:
_build_docker: docker.#Build&{
steps: [
{ output: rootfs: dagger.#Scratch },
docker.#Copy & {
contents: _build_exe.export.directories."/server"
dest: "/"
},
...
]
}
Or
_build_docker: docker.#Build&{
steps: [
docker.#Copy & {
input: rootfs: dagger.#Scratch
...
We could have a docker.#Scratch:
#Scratch: #Image & {
rootfs: dagger.#Scratch
config: {}
}
But in the meantime you can easily do this:
_build_docker: docker.#Build&{
steps: [
{ output: rootfs: dagger.#Scratch },
docker.#Copy & {
contents: _build_exe.export.directories."/server"
dest: "/"
},
...
]
}
Or this:
_build_docker: docker.#Build&{
steps: [
docker.#Copy & {
// input: docker.#Scratch
input...
Thanks a lot. This is the kind of shorcut I was looking for.
I didn't know that! Thanks for the quick reply + info.
I realize now that I just made your workaround simpler, which is probably not what you were looking for ;)
Haha, it's ok, I still learned from it!
This adds a premade FROM SCRATCH image to the docker package.
#Scratch: #Image & {
rootfs: dagger.#Scratch
config: {}
}
The idea came from @helderco in this discussion. I personally find it helpful, and think it could be good to have in the package.
It's useful in builds like this:
_build_docker: docker.#Build & {
steps: [
docker.#Copy & {
input:...
This is a very rough prototype of the updates I'm proposing to enable better ways of configuring cache. I'm opening this to get feedback on the design; the code here is just serving as a proof-of-concept to give everyone a rough idea of what this could look like.
Problems Being Solved
This is mentioned in the Seamless Configuration section of the CI caching epic, but to summarize the problems being solved here:
- Configuring cac...
Bumps github.com/spf13/viper from 1.11.0 to 1.12.0.
Release notes
Sourced from github.com/spf13/viper's releases.
v1.12.0
This release makes YAML v3 and TOML v2 the default versions used for encoding.
You can switch back to the old versions by adding viper_yaml2 and viper_toml1 to the build tags.
Please note that YAML v2 and TOML v1 are considered deprecated from this release and may be removed in a future release.
Please provide feedback in discussions and...
This will provide us with much more information that can be helpful for
debugging buildkit related problems. I don't expect that many users are
looking at these logs anyways, so I don't think there is much downside
to including extra information there.
Signed-off-by: Erik Sipsma
Closes #2129
New page will be available at https://docs.dagger.io/install
What is the issue?
I was working on the CUE LSP loader when I found a disjunction error in the test file image.cue.
It's because it's using the old way of exporting a file, but it was fixed in #1603.
I do not know why the error is not spotted, it's possible to run test and see them works but they are not running
dagger do -p ./image.cue test
[โ] actions.test.image.config.build ...
Resolves: #2523
Signed-off-by: Vasek - Tom C
Resolves #2342
Signed-off-by: Helder Correia
Signed-off-by: Erik Sipsma
Fixes #2249
I ended up making the updates to the client docs since it seems more important there. The handling outputs guide is mostly focused on exporting what should always be plain text data; the most relevant section is at the end and links to the client docs anyways.
Bumps @docusaurus/core from 2.0.0-beta.20 to 2.0.0-beta.21.
Release notes
Sourced from @โdocusaurus/core's releases.
2.0.0-beta.21 (2022-05-27)
:boom: Breaking Change
docusaurus-plugin-pwa
#7422 refactor(pwa): remove reloadPopup option in favor of swizzling (@โJosh-Cena)
create-docusaurus, docusaurus-cssnano-preset, docusaurus-logger, docusaurus-mdx-loader, docusaurus-migrate, docusaurus-plugin-client-redirects, doc...
Add experimental #Kustomize to experimental kubernetes package.
This definition handle url, directory, inline and manual configuration.
Signed-off-by: Vasek - Tom C
Having started using Dagger, I thought about what it would take to add logging to the Dagger APIs to help improve the user experience for other developers working with plans I write. I tinkered for a while and came up with this draft approach.
What's changed
- Add a dagger.#Logger type.
- Add a logger definition to the client in plan.
- Create a core.#Log task that uses logger as an input.
- The #Log and #Logger type exposes the Dagger CLI logger to the user.
Goals
- Keep c...
Add Azure Serverless package
This package provides declarations that allow us to interact with the Azure cli and the Azure Func Core tool.
This package doesn't implement all the features of Azure but we can create and publish serverless functions with it.
Also @TomChv, you can take a look at this
Bumps gopkg.in/yaml.v3 from 3.0.0 to 3.0.1.
Commits
f6f7691 The Billion Dollar Mistake
See full diff in compare view
De...
Bumps cypress-localstorage-commands from 1.7.0 to 2.0.0.
Release notes
Sourced from cypress-localstorage-commands's releases.
Drop NodeJs 12 support
Removed
chore: Drop NodeJs 12 support
docs: Remove Fossa badge
Changed
chore: Remove NodeJs v12 from tests workflow. Add NodeJs v18
chore(deps): Update devDependencies
Changelog
Sourced from cypress-localstorage-commands's changelog.
[2.0.0] - 2022-05-30
Removed
chore: Drop...
What are you trying to do?
Given an action like:
_alpine: alpine.#Build & {
packages: bash: _
}
The output is
6:59PM INF actions._alpine._dag."0"._op | computing
6:59PM INF client.env | computing
6:59PM INF client.env | completed duration=0s
6:59PM INF actions._pull | computing
6:59PM INF actions._pull | completed duration=0s
6:59PM INF actions._alpine._dag."0"._op | completed duration=3.7s
6:59PM INF actions._alpine._dag."1"._exec | computing
6:59PM I...
Signed-off-by: crjm
What is the issue?
With a typo on my dagger project init, I added a character o, it told me all was good, to proceed to dagger project update, but the update failed.
It actually created the cue.mod in the o subfolder.
We should display this info in the first log: Project initialized in ! To install dagger packages, run `dagger project update` from
Log output
$ dagger project init o
Project initialized! To install dagger packages, run `dagger project update`...
What are you trying to do?
I have a monorepo and I'd like to be able to run dagger do from any of the subprojects within the monorepo.
Much like git commit traces up the directory tree to find .git, I'd like dagger do to do the same for cue.mod.
Why is this important to you?
To save me having to run cd ../../../ && dagger do or dagger do -p ../../../
How are you currently working around this?
As above
Signed-off-by: crjm
Quoted text is barely visible in dark mode: https://docs.dagger.io/1226/coding-style#use-top-to-match-anything
This fix makes the text white as the rest of the body.
Signed-off-by: Joel Longtine
Defaulting the user of an exec to "root" causes errors when using images
that don't have /etc/passwd ("distroless" and similar type images).
BuildKit's logic is bit surprising here. If we instead provide
"root:root", then it has a codepath that will automatically default to
using uid/gid 0 without needing to check /etc/passwd or /etc/group.
Signed-off-by: Erik Sipsma
User in discord encountered this, also seems to have been reported previously, fixes #1659
What is the issue?
Context
as documented in push-package-on-repository
[...] you will directly be able to retrieve the personal package using the dagger project update url@tag command.
Consumers of the package can retrieve the package by the tag however the documentation does not specify any specific format of the tag when pushing the library to the repository.
Problem
as per the [imple...
Bumps google.golang.org/grpc from 1.46.2 to 1.47.0.
Release notes
Sourced from google.golang.org/grpc's releases.
Release 1.47.0
New Features
xds: add support for RBAC metadata invert matchers (#5345)
Bug Fixes
client: fix a context leaked if a connection to an address is lost before it is fully established (#5337)
Special Thanks: @โcarzil
client: fix potential panic during RPC retries (#5323)
xds/client: fix a potential concurrent map read/write in ...
Bumps amplitude-js from 8.18.3 to 8.18.4.
Changelog
Sourced from amplitude-js's changelog.
8.18.4 (2022-05-31)
Bug Fixes
polyfill object entries for ie11 (#536) (9e68a45)
Commits
67748c6 chore(release): 8.18.4 [skip ci]
9e68a45 fix: polyfill object entries for ie11 (#536)
See full diff in compare view
[
ae8d4b2 fix: cleanup test flake (#21989)
566a7b1 fix: UNIFY-1774 error if component config is not sourced for webpack/vite (#2...
996823c fix: support loading config files for pr...
Signed-off-by: Andrea Luzzardi
Right now core.#Dockerfile doesn't seem to support secret mounts: https://github.com/moby/buildkit/blob/master/frontend/dockerfile/docs/syntax.md#run---mounttypesecret
The way this should work is that users should be able to configure, in CUE, a mapping of secret IDs to secret contents. Then, anytime their Dockerfile requests a mount for a secret with that ID, it should show up as expected.
This should be straightforward, the "secret id"->"secret values" mappings can just be plugged i...
What are you trying to do?
get list of files in a directory by supplying a FS, a path, and an optional glob pattern.
Why is this important to you?
from @rockyburt:
...the particular use case i have is that when i run the standard python build command to generate a sdist (source distribution) i won't know what the name of that file is until it's actually generated, so the canonical way to get the name of that file would be ls
*.tar.gzit will be the only file in thedistd...
What is the issue?
Many users have asked for a best practices example that shows how Dagger is used in "real life".
What is the issue?
A user primarily uses Dagger remote, but they found it hard to understand how to use the commands while running remotely. We should add more clarification for this use case.
What is the issue?
A user has a cue plan with multiple actions, but they want to understand how to run a single actions with the same cue plan. We should clarify how to do this today and provide a real-world example.
What is the issue?
We don't have clear docs on how to use "Dagger project init help". A user wanted to create a new cue file, but didn't see how to do this with Dagger project init. @marcosnils explained that they could use "dagger project init help" command to do this.
We should make this more clear in the docs, so it is easier for our users to find.
The Run ID was generated in logger.Cloud, and therefore changing every
time NewWithCloud or TeeCloud was called, which is around 3 times in
dagger do.
This change:
- Uses the
RunIDgenerated by Telemetry once and for all - Converges
telemetryliteandtelemetryinto one
Problem
The Dagger documentation has broken search. This makes it difficult for developers to find the information they're looking for.
Solution
Fix the search feature in the Dagger documentation.
This PR consolidates FAQs and Guides into the Guides folder with subfolders to categorize.
One only has to drop the new doc in a subfolder in order to have it show up in the sidebar.
It's easy to add new subcategories, change the labels, or move files between them.
Before this, core.Start output was just dropped entirely. Now, its
stdout and stderr are logged in the same way core.Exec output is
logged.
This requires importing some Buildkit code that it uses for collecting
and publishing log streams efficiently (internally uses a circular
buffer). The interface is a bit clunky but gets us parity between
core.Start and core.Exec.
Signed-off-by: Erik Sipsma
Note: this also has a separate commit that refactors the code to split it amongst sep...
Bumps cypress-localstorage-commands from 2.0.0 to 2.1.0.
Release notes
Sourced from cypress-localstorage-commands's releases.
Support Cypress 10
Changed
chore: Update Cypress devDependency to v10
test: Use Cypress v10 for running plugin e2e tests. Update configuration.
chore: Update github actions versions
Changelog
Sourced from cypress-localstorage-commands's changelog.
[2.1.0] - 2022-06-02
Changed
chore: Update Cypress ...
Bumps cypress from 9.7.0 to 10.0.1.
Release notes
Sourced from cypress's releases.
v10.0.1
Changelog: https://docs.cypress.io/guides/references/changelog#10-0-1
v10.0.0
Changelog: https://docs.cypress.io/guides/references/changelog#10-0-0
Commits
013501c release 10.0.1 [skip ci]
ea3cd7f Merge branch 'master' into develop
9caf623 fix: do not show incorrectly support file migration step (#22015)
d875564 fix: prevent RunCard styles from leaking (#22...
Base64 encodes the plan using the %#v fmt.State into a plan logger
key.
Additionally moved the "running plan" event after the plan has been
evaluated to avoid unecessary logging.
Last change has been grouping all environment attributes into an
environtment key so we can dynamically add fields later.
Signed-off-by: Marcos Lilljedahl
Fixes #2462
NOTE: this is work in progress. Please consider helping me converting all the remaining docs :)
What is the issue?
Guide on docker.#Build inputs, outputs of docker.#Image
What are you trying to do?
https://github.com/dagger/dagger/pull/2095#pullrequestreview-942809364
for top use cases
Why is this important to you?
getting started
How are you currently working around this?
copy paste from docs
Yes please, their CLI is cool but the integration would be really helpful
- Initial support for logging the plan
- Add start, stop and error events for plan execution
This adds support to the pulumi package for obtaining stack outputs, which is very useful for getting the values of resources created by pulumi, e.g. an AWS Lambda URL.
There also appears to have been a typo in up.sh in the pulumi package where a
non-existent env var "STACK_NAME" was referenced. This fixes it to what
was likely intended, "PULUMI_STACK".
What are you trying to do?
I am trying to update the PATH variable based on its previous value inside docker.#Build. docker.#Set is insufficient for it. A mechanism to update env values or PATH specifically should be abstracted away as an action for ease in translation.
Why is this important to you?
Various pieces of software demand the PATH variable be updated for global discovery.
ENV PATH=${PATH}: is a common occurrence in most Dockerfiles, but it is extremely convoluted to do ...
Bumps cypress from 9.7.0 to 10.0.2.
Release notes
Sourced from cypress's releases.
v10.0.2
Changelog: https://docs.cypress.io/guides/references/changelog#10-0-2
v10.0.1
Changelog: https://docs.cypress.io/guides/references/changelog#10-0-1
v10.0.0
Changelog: https://docs.cypress.io/guides/references/changelog#10-0-0
Commits
9407d07 release 10.0.2 [skip ci]
309c31f fix: changes to correct typescript detection behavior (#22058)
3b5a245 fix: sanitize...
Bumps sass from 1.52.1 to 1.52.2.
Release notes
Sourced from sass's releases.
Dart Sass 1.52.2
To install Sass 1.52.2, download one of the packages below and add it to your PATH, or see the Sass website for full installation instructions.
Changes
Preserve location of trailing loud comments (/* ... */) instead of pushing the comment to the next line.
See the full changelog for changes in earlier releases.
Changelog
Sourced from sass's changelog.
1...
Signed-off-by: Marcos Lilljedahl
What is the issue?
After using docker.#Set & { config: env: : } once inside a docker.#Build, all default environment variables such as PATH, and HOME become inaccessible for interpolation. They exist inside the resultant image when a container is spun up to check.
Log output
9:22PM ERR system | failed to load plan: actions.test._build._dag."2"._set.config.env.PATH: invalid interpolation: undefined field: PATH:
./main.cue:19:24
./main.cue:19:52
actions.test._build._dag."...
Logs will now show:
6:59PM INF actions._alpine._dag."0"._pull | completed duration=3.7s
rather than the less self-evident
6:59PM INF actions._alpine._dag."0"._op | completed duration=3.7s
Resolves #2536
Implement basic Scaleway CLI to manage Scaleway infrastructure directly from
Dagger.
Signed-off-by: Vasek - Tom C
Today, the universe.dagger.io/powershell package's tests employ
mcr.microsoft.com/powershell which is only for x86/amd
The Microsoft team has released an image tag for arm32 that works on arm32 and arm64 linux including MacOS: mcr.microsoft.com/powershell:arm32v7-ubuntu-bionic
https://github.com/PowerShell/PowerShell-Docker/issues/520#issuecomment-1121468388
Since https://github.com/bitnami/bitnami-docker-kubectl/pull/43 has been merge, this PR updates the experimental package default version to latest version and adds a test.
Signed-off-by: Vasek - Tom C
What is the issue?
Today if you run dagger do or dagger do --help you are returned something like
It looks like the proper command syntax is dagger do [flags], but it should be something like dagger do [action] [flags]
Log output
No response
Steps to reproduce
No response
Dagger version
0.2.16
OS version
macOS 12.3.1
Signed-off-by: Jeremy Adams
Bumps github.com/stretchr/testify from 1.7.1 to 1.7.2.
Commits
41453c0 Update gopkg.in/yaml.v3
285adcc Update go versions in build matrix
6e7fab4 Bump actions/setup-go from 2 to 3.1.0
106ec21 use RWMutex
a409ccf fix data race in the suit
3586478 assert: fix typo
7797738 Update versions supported to include go 1.16
See full diff in compare view
[
333e25d fix: #22081 Cypress cra...
This PR adds the "always" field to terraform.#Run, which will be passed through to its internal usage of docker.#Run.
What are you trying to do?
I created a main.cue and imported the github.com/mlkmhd/dagger-maven project in it, but it does not resolve my dependency when I run dagger project update command:
main.cue:
package main
import (
"dagger.io/dagger"
"dagger.io/dagger/core"
"github.com/mlkmhd/dagger-maven"
)
dagger.#Plan & {
...
I run this command:
$ dagger project update
but it does not resolve imported dependency ...
Bumps github.com/rs/zerolog from 1.26.1 to 1.27.0.
Commits
e9344a8 docs: add an example for Lshortfile-like implementation of CallerMarshalFunc ...
263b0bd #411 Add FieldsExclude parameter to console writer (#418)
588a61c ctx: Modify WithContext to use a non-pointer receiver (#409)
361cdf6 Remove extra space in console when there is no message (#413)
fc26014 MsgFunc function added to Event (#406)
025f9f1 journald: don't call Enabled before each write (#407)
...
Docs integration tests (./docs/learn/tests) were never ported after the Europa release.
We need to have basic coverage, at least of the getting started example.
Signed-off-by: Marcos Lilljedahl
Problem
When running dagger do --help on a valid plan, I see the following error:
$ dagger do --help
panic: event: Action cannot be empty
goroutine 1 [running]:
go.dagger.io/dagger/telemetry.(*Telemetry).Push(0xc00046ae70, {0x3?, 0xc003e3f9b8?}, {0x1493fd8?, 0xc002940b80?})
/src/telemetry/telemetry.go:88 +0x11e
go.dagger.io/dagger/cmd/dagger/cmd.glob..func2(0x1cabcc0, {0xc000122200, 0x1, 0x1})
/src/cmd/dagger/cmd/do.go:91 +0x70c
github.com/spf13/cobra....
Problem
Deploying a Dagger project to CI, like Gitlab, Github Actions or Jenkins, is a manual and fastidious process. It is not "fire and forget": future changes to the Dagger project will often require changes to the CI configuration calling it as well. This adds friction to our DX, and creates the risk of drift and manual error.
Solution
dagger should support generating native CI configurations for a given project. For example dagger project build --target github, `dagger...
What is the issue?
Hello,
I looked at the Gitlab example here (which works btw) and wondered why curl is installed for fetching the dagger install.sh instead of just using wget, which is natively available in Linux systems. I am no expert in this matter, but this seems like unnecessary overhead for me.
If using wget, this line could be removed:
- apk add --no-cache curl
and the curl line could be replaced with `wget -O - https://dl...
@maudeFW Sorry for replying so late, I didnโt have time to look into it yetโฆ
Dagger Cloud run URL
https://dagger.cloud/runs/4327b9e4-81cf-4eb2-b8f1-bea1b84d89ea
What happened? What did you expect to happen?
No response
Dagger Cloud run URL
https://dagger.cloud/runs/4327b9e4-81cf-4eb2-b8f1-bea1b84d89ea
What happened? What did you expect to happen?
No response
What are you trying to do?
Clearly export and see errors from a Dagger do execution using a standard format. Someone I talked to after my PlatformCon talk mentioned this as a good way to integrate with existing systems:
Usually an HTML or something like JUnit XML, which can be displayed in most of the CI/CD web interfaces.
They in the past have struggled with trying to parse errors out of BuildKit's (custom, non-standard) output, something like this seems like it would help them a ...
What is the issue?
Users think they're stuck with default image and need to supply their own, but don't know how.
This shows an example of how:
https://github.com/dagger/dagger/blob/main/pkg/universe.dagger.io/yarn/test/test.cue#L73-L95
What is the issue?
Users are confused about what's an FS, what is if for, what can you do with it, what does it contain, which other Actions/Types use it, how?
Bumps sass from 1.52.1 to 1.52.3.
Release notes
Sourced from sass's releases.
Dart Sass 1.52.3
To install Sass 1.52.3, download one of the packages below and add it to your PATH, or see the Sass website for full installation instructions.
Changes
Fix crash when trailing loud comments (/* ... */) appear twice in a row across two different imports which themselves imported the same file each.
See the full changelog for changes in earlier releases.
Dart...
[dagger/dagger] Issue opened: #2607 ๐๏ธ Unifying CUE struct disjunctions with client\.env values
Dagger Cloud run URL
https://dagger.cloud/runs/38b70464-c8b4-4be0-8342-15ad9872ec15
What happened? What did you expect to happen?
The referenced run was successful, but not quite what I was trying to do.
Apparently the telemetry wasn't getting uploaded for my failed runs.
In any case, this is what I was actually trying to do:
package main
import (
"dagger.io/dagger"
"dagger.io/dagger/core"
)
_alpine: core.#Pull & { source: "alpine:latest" }
#cfgs: {
_pa...
What is the issue?
Users aren't sure how to use registries other than Docker Hub with core.#Pull/#Push and docker.#Pull/#Push. Docker Hub which might be rate-limiting/throttling them, or they might have an org requirement to use their registry. Common ones will be AWS ECR, Azure ACR, Google GCR, GitHub Container Registry.
package main
import (
"dagger.io/dagger"
"universe.dagger.io/docker"
)
dagger.#Plan & {
_awsRegion: "us-east-1"
client: {
...
What is the issue?
Since it's complicated to get package management right and we'd love folks to share their creations with the whole Dagger community via Universe, it's easiest if they develop their packages right in a Universe context versus in a disconnected repo.
To that end we'd recommend creating a fork of dagger/dagger, creating a branch for their new package, then putting it under universe.dagger.io/x// and taking advantage of the cue.mod already governing the `universe...
What is the issue?
cannot reuse body, request must be retried errors when pushing multiple images back to back?
FTL failed to execute plan: task failed: actions.push."redhat-marketplace-operator".dataservice._opt._push: failed commit on ref "manifest-sha256:b61cb26feed1460415762fe863fa15ac79a64739420dcef0dc9a0bb63b9ce152": cannot reuse body, request must be retried
I'm seeing similar errors here: https://github.com/docker/build-push-action/issues/452
fix suggested by...
This copies the line about checking with maintainers before pursuing
large changes from the website to our CONTRIBUTING.md. This is a
very important point to emphasize, so it doesn't hurt to make it clear
in as many places as possible.
Signed-off-by: Erik Sipsma
Fixes https://github.com/dagger/dagger.io/issues/432
Signed-off-by: Marcos Lilljedahl
Bumps cypress from 10.0.0 to 10.1.0.
Release notes
Sourced from cypress's releases.
v10.1.0
Changelog: https://docs.cypress.io/guides/references/changelog#10-0-3
v10.0.3
Changelog: https://docs.cypress.io/guides/references/changelog#10-0-3
v10.0.2
Changelog: https://docs.cypress.io/guides/references/changelog#10-0-2
v10.0.1
Changelog: https://docs.cypress.io/guides/references/changelog#10-0-1
Commits
6c9894b chore: update version (#22253)
72e6b88...
What is the issue?
Any secret outputs generated by pulumi.#Up are exported as the literal string [secret] instead of the actual secret value. I needed to edit the up.sh script to add --show-secrets to work around this issue.
cc @rawkode @sipsma
Log output
No response
Steps to reproduce
No response
Dagger version
dagger devel (6d14bdda) linux/amd64
OS version
Arch Linux
Signed-off-by: Jeremy Adams
Hello Dagger Community! ๐
cc @dagger/maintainers
We've been rethinking contribution of content to Dagger Universe and want to share this proposal for comment as we refine the plan. Comments/suggestions welcome. I'll start with the current state and our proposed future.
Up until recently:
There were two kinds of Dagger Universe packages:
- official ones under
universe.dagger.io/ - experimental ones under
universe.dagger.io/x//
Well, maybe three...In addition there wer...
What are you trying to do?
Use dagger with buildkit deployed via:
docker buildx create --driver kubernetes
Why is this important to you?
To talk to the instance, the docker client execs buildctl dial-stdio inside the pod and streams stdin/out (see execconn). Using buildctl this looks like:
buildctl --addr kube-pod://buildkitd build --fronte...
That's a great proposal! I have few questions:
1 - What about current PRs (#2452, #2533, #2581 and #2578) ? Should they update it or we take care about copying those to alpha?
2 - I do not see kubectl package in Alpha, what is the decision for packages that has multiple implementation?
3 - How will we test packages that interact with third-parties (aws/sam, discord) or required infrastructure (kubernetes, pulumi) ? Is it up to dagger to set infrastructure or to the user? ...
This is a package uses the PHP package manager composer. I know this is missing a unit test. Any pointers on how to improve to get this ready further are much appreciated.
backport "always" flag from PR #2588
cc @jpadams
That's a great proposal! I have few questions:
1 - What about current PRs (#2452, #2533, #2581 and #2578) ? Should they update it or we take care about copying those to
alpha?
We should redirect those PRs to alpha
2 - I do not see
kubectlpackage in Alpha, what is the decision for packages that has multiple implementation?
https://github.com/dagger/dagger/pull/2579#issue-1260905491
Packages with competing implementations were not copied yet. We'll need to work with ...
What is the issue?
I tried to pull from a remote git repository which runs with a self signed certificate. Is there a option to add a trusted certificate?
Log output
#1 0.058 Initialized empty Git repository in /var/lib/buildkit/runc-overlayfs/snapshots/snapshots/3/fs/
#1 0.144 fatal: unable to access 'https://gitlab/group/project.git/': SSL certificateโฆ
4:25PM FTL failed to execute plan: task failed: actions.source: failed to load cache key: failed to fetch remote https://gitlab...
Resolves #2153
Signed-off-by: Helder Correia
- docs: move dagger cloud under logdebug docs section
- add offline_access scope so refresh token flow can be performed
What is the issue?
Help users understand why some actions sometimes fail due to missing files or confusions about filesystem and mounts locations.
See comment form @marcosnils at
https://github.com/dagger/dagger/issues/2197#issue-1204811074
Landing page with type-ahead search/tags-driven navigation of guides, starter templates, universe actions catalog (stretch).
@slumbering @Camille-Elairin @crjm
starter template code, guide on how to use
Templates needed
- [ ] node.js
- [ ] docker image build & publish
- [ ] dotnet
- [ ] maven
- [ ] python-app
- [ ] c & cpp
- [ ] golang
- [ ] gradle
- [ ] laravel or other PHP (composer?)
What are you trying to do?
The current design for fetching repos is very limiting. We're parsing a URL into repo and path, but current design assumes 2 parts for the repo and rest for the path.
For example, the URL gitlab.com/dagger/dagger/stdlib/test/test gets parsed into:
- Repository:
github.com/dagger/dagger - Path:
/stdlib/test/test
I think it's more flexible to require a .git separator in the URL to get the path after it, otherwise making the full URL the ...
cc @samalba
Functionality: PRs to universe.dagger.io/x should be blocked by a check and the copy below should point contributors to alpha instead.
Proposed copy:
Thank you for your submission to Dagger Universe! We've changed the flow for submissions and now all new submission PRs should be targeted to
universe.dagger.io/alpha/. More information is here: https://github.com/dagger/dagger/discussions/2616
We've changed the contribution flow and need to let folks know about it in all the right places:
https://github.com/dagger/dagger/discussions/2616
TODO:
As part of the new contribution flow, we'll mark packages as Deprecated: with a comment in the .cue files.
If deprecated, PRs should be blocked.
Related:
- 2633
Bumps concurrently from 7.2.0 to 7.2.2.
Release notes
Sourced from concurrently's releases.
v7.2.2
What's Changed
Update rxjs to version 7.0.0 - #326
Fix TypeScript not able to resolve types when on Node 16 - #330
New Contributors
@โjsfix-updater made their first contribution in open-cli-tools/concurrently#326
@โBaune8D made their first contribution in open-cli-tools/concurrently#330
v7.2.1
What's Changed
Fix --success command- syntax w...
Signed-off-by: Kambui Nurse
fixes issue#2638
We want to create some starter templates. We will make an issue for each of the templates that we are requesting.
This issue specifically covers the need for a guide that the community can use to build the templates quickly. The output of this issue should be a guide that the community can follow to ensure that all of the starter templates have the same consistency.
Once completed, we will attach this guide to each of the starter template issues as a reference.
Some examples:
ht...
We'd love to have a Node.js starter template.
Recommended approach and best practices for creating a starter template - (coming soon with #2642 )
We'd love to have a "docker image build and publish" starter template.
Recommended approach and best practices for creating a starter template - (coming soon with https://github.com/dagger/dagger/issues/2642 )
We'd love to have a dotnet starter template.
Recommended approach and best practices for creating a starter template - (coming soon with https://github.com/dagger/dagger/issues/2642 )
We'd love to have a Maven starter template.
Recommended approach and best practices for creating a starter template - (coming soon with https://github.com/dagger/dagger/issues/2642 )
We'd love to have a python-app starter template.
Recommended approach and best practices for creating a starter template - (coming soon with https://github.com/dagger/dagger/issues/2642 )
We'd love to have a c & cpp starter template.
Recommended approach and best practices for creating a starter template - (coming soon with https://github.com/dagger/dagger/issues/2642 )
We'd love to have a golang starter template.
Recommended approach and best practices for creating a starter template - (coming soon with https://github.com/dagger/dagger/issues/2642 )
We'd love to have a gradle starter template.
Recommended approach and best practices for creating a starter template - (coming soon with https://github.com/dagger/dagger/issues/2642 )
We'd love to have a laravel (or other PHP) starter template.
Recommended approach and best practices for creating a starter template - (coming soon with https://github.com/dagger/dagger/issues/2642 )
Signed-off-by: Jeremy Adams
What is the issue?
need to make sure there are docs on these gotchas:
https://cuelang.org/play/?id=JKDWbdkJ5LV#cue@export@cue
template syntax vs array syntax vs string interpolation
template: flags: [string]: string | bool where this would be valid
flags: {
"--foo": "bar:
"baz": true
}
vs array: args: [...string] where this would be valid
args: ["foo", "bar", "baz"]
and myarg: args[1] evals to means myarg evals to "bar"
vs string i...
This PR adds GolangCI linter to alpha universe.
@jpadams originally suggested to add it under universe.dagger.io/alpha/go/lint.cue, but Go has a plethora of lint tools (including the now deprecated, but official golint), so it didn't seem fair to make golangci THE linter and therefor I moved under a subdirectory.
Let me know what you think.
What are you trying to do?
I'm trying to put a secret into a file, but it's very hard because there's no function what makes it easier.
Why is this important to you?
No response
How are you currently working around this?
No response
bash.#RunSimple is like bash.#Run, but with a pre-configured container image.
Ideally this would be implemented as a default value in bash.#Run, but because of limitations in how Cue handles default values (#???), that is not possible.
Use an optional environment variable BIN_DIR to customize the final
install directory of the dagger binary.
Update documentation to show how to use the environment variable
Signed-off-by: Connor Kelly
Related to: https://github.com/dagger/dagger/pull/2620
I've worked in the feedback that @TomChv left on the related pull request.
Related to: https://github.com/dagger/dagger/pull/2620
I've worked in the feedback that @TomChv left on the related pull request.
Signed-off-by: Helder Correia
[dagger/dagger] Pull request opened: #2663 docs: Add windows example in \`cli\.\#Load\` using socket
Signed-off-by: Helder Correia
Signed-off-by: Narendra Patwardhan
This is not necessary anymore as the engine will always send events once
authenticated
Resolves #2543
Signed-off-by: Helder Correia
The documentation for the dagger project update will be improved in #2543.
This issue is for tracking the improvement of the error message that you get when using tags in dagger project update.
Problem
We allow installing modules with a branch today, but this is giving reproducibility issues. When updating packages today, only git tags are considered for finding latest versions (instead of considering branches). The best fix is to not store branches in dagger.mod but convert to pseudo-versions instead.
This is planned in #2502 but maybe there's a quicker fix we can make to allow some users to update packages using a branch.
Stop-gap solution
When updatin...
This broke github workflows, from #2290.
Signed-off-by: Helder Correia
This PR contains three changes:
- Using
helm upgrade --installinstead ofhelm installbecause it support both new installation and upgrade scenarios. - Let user define custom namespace and Helm create it if needed.
- Using correct package in test.
FYI @vgjm
Added missing word to sentence to make it more readable.
Signed-off-by: Pico Geyer
@gcoguiec It looks like your dagger-orb repo isn't up anymore. Would you be willing to donate the code to Dagger to maintain?
dagger project init should have an update like dagger project init --update --force that runs a dagger project update --force right after init (--force is proposed new flag). This is useful in a new project or in CI environments.
dagger project update (without --force) should ask the user if they really want to update packages if the project's cue.mod/pkg directory is not empty. This could prevent overwriting WIP dev on packages, etc.
dagger project update --force or `da...
What is the issue?
Today, some Universe Actions have hard-coded images or versions, in general, these should be customizable by the consumer of the package.
Example of solution: https://github.com/dagger/dagger/pull/2632/files
Example of issue: #2604
Signed-off-by: Jeremy Adams
Signed-off-by: Mark Sagi-Kazar
What is the issue?
Environment variables marked as optional cannot be used as environment variables in actions. For example, the following plan would fail:
package main
import (
"dagger.io/dagger"
"universe.dagger.io/alpine"
"universe.dagger.io/bash"
)
dagger.#Plan & {
client: env: {
TEST_OPTIONAL?: dagger.#Secret
}
actions: {
test: {
run: bash.#Run & {
_image: alpine.#Build & {
packages: {
bash: _
}
}
input: _im...
Signed-off-by: Joaquin Fernรกndez Campo
Signed-off-by: user.email
This speeds up telemetry upload considerably. This is an initial
approach before moving into more advanced solutions like using http2
streams or forking the process to handle this in the background. So far
the performance has been acceptable, so we can say it's good enough for
a simple solution for the moment.
Signed-off-by: Marcos Lilljedahl
It is common to use --log-format plain while debugging a dagger plan or whenever you need more logs than the standard dagger output provides. It is also useful when you want dagger to output json or yaml.
For --log-level the short flag of -l has already been taken.
There should be a shorter flag for --log-format.
Ideas include -f for "format", ...
cc @shykes
Bumps github.com/stretchr/testify from 1.7.2 to 1.7.3.
Commits
07dc7ee Bump actions/setup-go from 3.1.0 to 3.2.0 (#1191)
c33fc8d Bump actions/checkout from 2 to 3 (#1163)
3c33e07 Added Go 1.18.1 as a build/supported version (#1182)
e2b56b3 Bump github.com/stretchr/objx from 0.1.0 to 0.4.0
See full diff in compare view
[.
cc @dolanor
What is the issue?
On the https://dagger.io/ page there is a "Get started" link to https://docs.dagger.io/getting-started which shows "Page Not Found."
What is the issue?
Several users have reported that loading an image into docker takes a very long time. While part of this is inherent (exporting a tarball and loading it into docker can take up a fair bit of memory+cpu), our implementation relies on a lot of extra copying:
- It uses
core.#Exportto export the tarball to a tmp dir on the local filesystem - Then that gets reloaded back into the buildkit with a local import
- That local import gets copied (to deal with some cache ...
Signed-off-by: Jeremy Adams
fixes: #2694
Add the uffizzi package to the dagger universe
- [x] Create Preview
- [ ] Update Preview
- [ ] Delete Preview
- [ ] Tests
Bumps github.com/stretchr/testify from 1.7.2 to 1.7.4.
Commits
48391ba Fix panic in AssertExpectations for mocks without expectations (#1207)
840cb80 arrays value types in a zero-initialized state are considered empty (#1126)
07dc7ee Bump actions/setup-go from 3.1.0 to 3.2.0 (#1191)
c33fc8d Bump actions/checkout from 2 to 3 (#1163)
3c33e07 Added Go 1.18.1 as a build/supported version (#1182)
e2b56b3 Bump github.com/stretchr/objx from 0.1.0 to 0.4.0
See...
Bumps github.com/spf13/cobra from 1.4.0 to 1.5.0.
Release notes
Sourced from github.com/spf13/cobra's releases.
v1.5.0
Spring 2022 Release ๐ฅ๏ธ
Hello everyone! Welcome to another release of cobra. Completions continue to get better and better. This release adds a few really cool new features. We also continue to patch versions of our dependencies as they become available via dependabot. Happy coding!
Active help ๐๐ผ
Shout out to @โmarckhouzam for a big value a...
[dagger/dagger] Issue opened: #2701 docs: Explain Universe packages/actions in Core Concepts/Actions
https://docs.dagger.io/1221/action
Mentions two kinds of actions: core and composite. It should be clear that Universe is a set of ready-to-use (and emulate and extend) composite actions.
This is a really easy proposal of how can we use dagger in TravisCi, the example tried to follow the features exposed in the other examples, like the use of an specific version, cache, etc
This will fix how codeblocks inside hyperlinks are rendered inside
admonitions.
The underline for the hyperlink is removed as it does not render well in Firefox.
From #328
Signed-off-by: crjm
Bumps cypress from 10.1.0 to 10.2.0.
Release notes
Sourced from cypress's releases.
v10.2.0
Changelog: https://docs.cypress.io/guides/references/changelog#10-2-0
Commits
b907127 chore: updating version (#22432)
181a2b0 Trigger Build
b925dce Merge pull request #22424 from cypress-io/master
6d34fd3 fix: clean up some unexpected behavior and designs (#21551)
152e828 fix(cli): filter CertVerifyProcBuiltin from stderr (#22342)
b865fd4 fix(cli): don't ...
Bumps sass from 1.52.3 to 1.53.0.
Release notes
Sourced from sass's releases.
Dart Sass 1.53.0
To install Sass 1.53.0, download one of the packages below and add it to your PATH, or see the Sass website for full installation instructions.
Changes
Add support for calling var() with an empty second argument, such as var(--side, ).
JS API
Fix a bug where meta.load-css() would sometimes resolve relative URLs incorrectly when called from a mixin using the ...
This commit revert a change of API in universe/go.
A recent PR added 2 fields: name and repository to customize the image to
pull when calling go.#Image.
The problem is that change does not fit with the purpose of go.#Image, this
one should be used as default image to cover simple workflow with the simplest
possible API. That's why it's usually only possible to configure some packages
and a version of the official image.
If the user want to provide a custom image, he can ov...
This will modify the spacing and font weight of the sidebar categories.
It will also convert the cards on each category index page to a list.
From #486
Signed-off-by: crjm
Add comment to bash.#Run set image using input: of wrapped docker.#Run and possibly point to proposed bash.#RunSimple
to avoid confuse panic https://github.com/dagger/dagger/issues/2326
instead panic
show error like
5:06PM ERROR system | failed to load plan: actions.test.run._exec.env.TEST1: ( dagger.#Secret & client.commands.echo.stdout & (string | dagger.#Secret) & (string | dagger.#Secret) ): actions.test.run._exec.env.TEST1: incomplete cause disjunction: ( dagger.#Secret & client.commands.echo.stdout & (string | dagger.#Secret) & (string | dagger.#Secret) ): actions.test.run._exec.env.TEST1...
What is the issue?
This is upstream issue, buildkit ignore llb.customname for fileop.
https://github.com/moby/buildkit/pull/2932
Log output
No response
Steps to reproduce
No response
Dagger version
OS version
related: https://github.com/dagger/dagger/issues/2711
Then we could get readable image history.
This PR adds Codecov uploader to the alpha channel of universe as seen in my blog post.
The uploader comes with a lot more option, but I thought I'd open a PR first and more options later as required.
-B, --branch Specify the branch manually
-b, --build Specify the build number manually
-c, --clean Move discovered coverage reports to ...
- Version Control:
etc
What are you trying to do?
This maybe be more of a documentation request. But essentially, having a good way to run dagger from within dagger. This should solve issues where dagger with certain command line options (ie --platform) could be run under a command dagger action set.
Use Case:
Steps to run:
- build project documentation via one or more dagger actions (only needs to run on default platform)
- acquire docker login credentials from a cloud provider for pushing (only nee...
Bumps github.com/stretchr/testify from 1.7.4 to 1.7.5.
Commits
b5ce165 fixing panic in calls to assertion with nil m.mutex (#1212)
c206b2e Mock can be deadlocked by a panic (#1157)
1b73601 suite: correctly set stats on test panic (#1195)
ba1076d Add .Unset method to mock (#982)
c31ea03 Support comparing byte slice (#1202)
See full diff in compare view
[
Bug Fixes
add guard for navigator for use in envs that do no support navigator (#542) (c3b31ad)
fix s3 upload script to use iam role (#534) (a453dc3)
Changelog
Sourced from amplitude-js's changelog.
8.18.5 (2022-06-24)
Bug Fixes
add guard for navigator for use in envs that do no support navigator (#542) (c3b31ad...
adds Dagger Cloud CTA across different docs tutorials to increase
visibility and help users better troubleshooting errors.
Signed-off-by: Marcos Lilljedahl
Bumps github.com/hashicorp/go-version from 1.5.0 to 1.6.0.
Release notes
Sourced from github.com/hashicorp/go-version's releases.
v1.6.0
FEATURES:
Add Prerelease function to Constraint to return true if the version includes a prerelease field (#100)
Changelog
Sourced from github.com/hashicorp/go-version's changelog.
1.6.0 (June 28, 2022)
FEATURES:
Add Prerelease function to Constraint to return true if the version includes a prerelease field...
Bumps cypress from 10.2.0 to 10.3.0.
Release notes
Sourced from cypress's releases.
v10.3.0
Changelog: https://docs.cypress.io/guides/references/changelog#10-3-0
Commits
61f8bdc chore: updating version for 10.3.0 (#22566)
f902b96 chore: Adding record key context for internal ui jobs (#22559)
54e31e3 chore: Improve pkg/driver types part 2 (#21610)
c0ea9bd fix: use posix path for ts-node loader (#22550)
5d5574e fix: add baseUrl to TestConfigOverrid...
This uses cue's build.Instace struct and sends all the
ast.File found during CUE parsing as well as the corresponding
error that highlights the error while evaluating the plan
Signed-off-by: Marcos Lilljedahl
Noticed that there is an extra word help on Contributing to Dagger doc. This may be a minor thing, but there was a spacing on the markdown file, but since it was not rendered showing a space on the website, I only remove the extra space on the Markdown file.
Signed-off-by: Antonette Caldwell
I've changed all dagger cloud links to remove attribute "noreferrer".
Signed-off-by: jffarge
Please make Azure Devops a reality!!!
This would be a game changer for Azure DevOps Pipelines.
@gerhard can you tell us the probability that you will integrate dagger with azure devops? :)
@gerhard can you tell us the probability that you will integrate dagger with azure devops? :)
Bumps github.com/stretchr/testify from 1.7.4 to 1.8.0.
Commits
181cea6 impr: CallerInfo should print full paths to the terminal (#1201)
cf1284f Allow mock expectations to be ordered (#1106)
66eef0e fix: assert.MapSubset (or just support maps in assert.Subset) (#1178)
2fab6df Add WithinTimeRange method (#1188)
b5ce165 fixing panic in calls to assertion with nil m.mutex (#1212)
c206b2e Mock can be deadlocked by a panic (#1157)
1b73601 suite: correctly se...
What is the issue?
$ go install github.com/dagger/dagger@latest
go: downloading github.com/dagger/dagger v0.2.21
go: github.com/dagger/dagger@latest (in github.com/dagger/dagger@v0.2.21):
The go.mod file for the module providing named packages contains one or
more replace directives. It must not contain directives that would cause
it to be interpreted differently than if it were the main module.
Log output
No response
Steps to reproduce...
It would be nice to add a page to the docs where each possible command is explained with a one-liner description so first-time CLI users can have a quick reference of the available commands.
Inspiration:
What is the issue?
I've looked all over the place, but any searching regarding "dagger.io" and "npm" shows absolutely nothing. Is there really not an npm package? I see there's a yarn one in the "dagger universe".
What is the issue?
Working offline, I was expecting being able to run my actions. I just needed to put the resolveMode of docker.#Pull in preferLocal. Excep it still tries to do a HEAD on the registry:
Log output
go run ./cmd/dagger/ do --no-cache -p ./cmd/dagger/logger/tty.ok.cue all
[โ] actions.all.hello.script 0.0s
[โ] action...
What are you trying to do?
When I use core.#Source for a node project, I only want to include files that are actually tracked in git. Conveniently, we already have files that tell git what to ignore ie. .gitignore. It would be nice if we had 2 things:
- Recursive exclude - Currently, excluding "node_modules" only excludes the top level folder, but not any in subfolders
- The ability to reference a file with a list of files to exclude. In this case,
.gitignore.
I apologize ...
Since your test in test/image.cue has package codecov at the top, and you're in the codecov package directory tree, you don't need to import the universe.dagger.io/alpha/codecov package and don't need to use codecov.#Image just #Image. Like this:
package codecov
import (
"dagger.io/dagger"
)
dagger.#Plan & {
actions: test: #Image & {}
}
Comment from user:
How does it handle ambiguous package names in different paths? My gut tells me staying explicit is generall...
What is the issue?
I apologize if this is possible in some way. The documentation for built-in actions is pretty much non-existent. This is the closest I could find: https://docs.dagger.io/1222/core-actions-reference. But that doesn't detail anything about what each actions' parameters are or how to use them
related: #2732
Registering anonymized user events in the docs would be great as it would bring us a great source of information for the decision-making process of the designs.
Right now, we are using the latest version of DocSearch, so we would rely on Algolia's User Events.
This will improve UX by adding space between sidebar categories,
and by increasing the category title font weight and size.
From #260
Signed-off-by: crjm
Signed-off-by: Marcos Lilljedahl
Bumps clsx from 1.1.1 to 1.2.0.
Release notes
Sourced from clsx's releases.
v1.2.0
Features
Add named clsx export alias (#43, #44): 56ab81f
Thank you @โdanikaze~!
This is purely an alias for the default export so that TypeScript users can avoid the esModuleInterop setting. In other words, the follow import statements are effectively identical, but the latter is preferred by TypeScript:
import clsx from 'clsx';
// or
import { clsx } from 'clsx';
Importan...
Resolves #2631
Signed-off-by: Helder Correia
Gitlab's template runs docker with a dind service. Most of our docs interacts with the docker daemon with a unix socket, which is not available on Gitlab's runner. Adds a cautionary explanation + a reproducible example below the template
Peer: helder
Signed-off-by: guillaume
I just came accross dagger today and have a few questions. I would really appreciate some guidance whether dagger is what I am looking for, which I hope :breites_lรคcheln:
Currently, we are in the process of changing to a Python monorepo where we will use https://www.pantsbuild.org/ as the build system (we will have to rewrite CI/CD as well then). It is a great tool for packaging our application build artifacts from the monorepo. It also supports building docker images, but I am having the fe...
In the past couple months I've created a few Dagger actions, some of them behave a bit differently (by default) when running in a local environment compared to CI or when running them on PRs compared to tags.
Typically, publishing steps should "dry run" by default in a local environment / non-tag CI runs.
So far I used the following style:
package main
dagger.#Plan & {
client: filesystem: ".": read: _
client: env: {
CI: string | *""
}
actions: {
someAction: m...
Seems to me the current convention is what you're already doing. I.e., do a field comprehension based on an env var's value or something similar.
If you mean that you wish your action had access to the client's env vars without having to pass through from client, you're not the first to ask (#2437).
If not, do you have an idea of something else that would be much better?
You can also group actions such that you can do dagger do ci someAction vs dagger do someAction on the diffe...
I don't necessarily have a better idea (yet), I wanted to start a conversation about the topic and see what other people do.
Having access to client env vars from actions would be nice, but I also get why it's not implemented that way.
You can also group actions
I thought about that, but it feels a bit weird. Ideally, I'd want my pipelines to be portable across environments and user env vars/parameters to configure pipelines. Having completely different groups is like having differ...
[dagger/dagger] New comment on discussion #2743: Dagger in a monorepo setup with Python build system
It looks like most of your problem can be summarized as: orchestrating docker builds, which dagger can handle pretty easily. Before I dig into your points below, I'd recommend reading those 2 guides from the dagger doc:
- Building container images - basic principles to either build from Dockerfiles or directly from dagger instructions
- The docker package - very detailed guide to leverage docker, includi...
Fixes an issue when trying to get feedback about 0.1 plans which are not
supported. Telemetry was trying to create an empty run which is not
currently possible.
Signed-off-by: Marcos Lilljedahl
Adds support for HTTP and HTTPS Proxy. It translates the right env vars to LLB Run options.
- Closes #2053
- Closes #1369
GoReleaser v1.10 update broke our releases: https://github.com/dagger/dagger/runs/7205381884?check_suite_focus=true#step:8:116
It tried building a windows_arm64 version which is not possible with Go 1.16. This has more details: https://github.com/goreleaser/goreleaser/issues/3224
Instead of pinning to GoReleaser v1.9.2 (last version that worked https://github.com/dagger/dagger/runs/7097754532?check_suite_focus=true#step:8:15) we should do the right thing and bump the Go version that w...
Move Dagger vs. X comparison doc to Reference section.
As this logger takes more time to fix, I've split it from the original, used a new logger format name tty2 so we can start merging it and improve it from here.
[dagger/dagger] New comment on discussion #2743: Dagger in a monorepo setup with Python build system
I think portability and reproducability will be a great enhancement in terms of CI/CD with dagger. I can test those pipelines locally and be sure they run on CI. And for the specific case of orchestrating docker builds for all the microservices it can be considered very helpful.
I am a little worried about two things:
- Maintaining some wrapper around pants, i.e. through a dagger package. I have not thought about it in depth, but I would like to remain access to all pants commands
- ...
The sidebar in the docs is the index for the documentation content. We must rethink the labels and structure of the sidebar to improve UX and provide an easier way to infer what information a doc page will have based on its sidebar label.
Bumps clsx from 1.2.0 to 1.2.1.
Release notes
Sourced from clsx's releases.
v1.2.1
Patches
Ensure CommonJS and UMD entrypoints have the named clsx export too
Chores
Build CJS & UMD files manually (#50): 3712966, 2114f5b
Full Changelog: https://github.com/lukeed/clsx/compare/v1.2.0...v1.2.1
Commits
6da37d6 1.2.1
62d6071 chore: revert version bump
2114f5b chore(bin): mkdir if missing
3712966 chore: build CJS & UMD files manually;
See full d...
Prevents auth panic by adding a mutex in the login process since
multiple clients could be waiting to send telemetry concurrently.
Signed-off-by: Marcos Lilljedahl
PR #2748 added support for HTTP and HTTPS proxy from environment variables inside actions tasks. However it actually supports proxies for anything using core.#Exec. The proxy env vars will be ignored for other ops involving network connections: core.#GitPull, core.#HTTPFetch, core.#Pull.
It's not critical as most packages are built on top of core.#Exec. Also, not sure if there is a proper way to support proxies outside of a llb Exec.
Related issues: #2053 #1369
cc @dolanor...
This is now picked up from Go's 1.18 debug.Buildinfo.
Keep the short git SHAs in the version.
Follow-up to https://github.com/dagger/dagger/pull/2749
Signed-off-by: Mark Sagi-Kazar
Fixes #585
Signed-off-by: Marcos Lilljedahl
Missed a couple of things from the first merge:
- Spacing error in full pipeline
- Caveat added that my sonarqube config is only for Github
- Removed mention of License Scanning as it did not make it into the final pipeline
Personally, I'd keep a final gate in the form of manual approve from a maintainer before promoting something to prod.
There is also the question of versioning (or backward compatibility promise). Since everything is in a single, giant repo it seems quite hard to do versioning. So anything that gets promoted to prod (or even beta) needs to stay backward compatible....indefinitely? At the very least we need to specify the requirements around backward compatibility.
After writing a couple ...
Is there a specific use case, or blog post about a specific deployment example, or even new docs guides that you would like to read? Anything that can help you build your own dagger Plan?
- docs: Fix Dagger Cloud CTA link
- docs: Add how to disconnect the CLI from Cloud
- docs: Remove tip dupe from Dagger Cloud docs
- docs: Minor Dagger Cloud page rewords
Right now, the Dagger Cloud CTA is being built by Docusaurus as a standalone page, as the snippet is located inside the /includes folder.
This also impacts DocSearch index, as it crawls the Dagger Cloud CTA page too.
By adding an underscore before the filename, Docusaurus omits creating a route for the snippet, as per the docs. This also avoids DocSearch indexing on ...
Bumps go.opentelemetry.io/otel/sdk from 1.4.1 to 1.8.0.
Release notes
Sourced from go.opentelemetry.io/otel/sdk's releases.
Release v1.6.3
Fixed
Allow non-comparable global MeterProvider, TracerProvider, and TextMapPropagator types to be set. (#2772, #2773)
Release v1.6.2
1.6.2 - 2022-04-06
Changed
Don't panic anymore when setting a global TracerProvider or TextMapPropagator to itself. (#2749)
Upgrade go.opentelemetry.io/proto/otlp in...
Bumps go.opentelemetry.io/otel/exporters/jaeger from 1.4.1 to 1.8.0.
Release notes
Sourced from go.opentelemetry.io/otel/exporters/jaeger's releases.
Release v1.6.3
Fixed
Allow non-comparable global MeterProvider, TracerProvider, and TextMapPropagator types to be set. (#2772, #2773)
Release v1.6.2
1.6.2 - 2022-04-06
Changed
Don't panic anymore when setting a global TracerProvider or TextMapPropagator to itself. (#2749)
Upgrade go.open...
Bumps go.opentelemetry.io/otel/trace from 1.4.1 to 1.8.0.
Release notes
Sourced from go.opentelemetry.io/otel/trace's releases.
Release v1.6.3
Fixed
Allow non-comparable global MeterProvider, TracerProvider, and TextMapPropagator types to be set. (#2772, #2773)
Release v1.6.2
1.6.2 - 2022-04-06
Changed
Don't panic anymore when setting a global TracerProvider or TextMapPropagator to itself. (#2749)
Upgrade go.opentelemetry.io/proto/otl...
Bumps go.opentelemetry.io/otel from 1.4.1 to 1.8.0.
Release notes
Sourced from go.opentelemetry.io/otel's releases.
Release v1.6.3
Fixed
Allow non-comparable global MeterProvider, TracerProvider, and TextMapPropagator types to be set. (#2772, #2773)
Release v1.6.2
1.6.2 - 2022-04-06
Changed
Don't panic anymore when setting a global TracerProvider or TextMapPropagator to itself. (#2749)
Upgrade go.opentelemetry.io/proto/otlp in go.open...
Bumps @docusaurus/core from 2.0.0-beta.21 to 2.0.0-beta.22.
Release notes
Sourced from @โdocusaurus/core's releases.
2.0.0-beta.22 (2022-07-08)
:boom: Breaking Change
docusaurus-theme-classic
#7740 refactor(theme): nest theme icons under subfolder @โtheme/Icon/* (@โslorber)
docusaurus-plugin-content-blog, docusaurus-theme-classic, docusaurus-theme-common
#7716 refactor(theme): split BlogPostItem into smaller theme ...
Before this commit, if user has an invalid Dagger plan and runs dagger do without any arguments, they'll get an error and the execution won't
be uploaded to Dagger Cloud. This allows uploading the user's plan
even though it's invalid.
This change will very likely help new users trying to create plans
without too much knowledge of the dagger CUE specific definitions.
Signed-off-by: Marcos Lilljedahl
What is the issue?
It seems that log output for each group is somewhat buggy as only 1 group has a live stream of events getting updated.
Log output
No response
Steps to reproduce
dagger do --log-format=tty -p ci.cue test
Dagger version
v0.2.22
OS version
Ubuntu 20.04
What is the issue?
if a previous line was big and now it draws a smaller line, it seems that the end is not clean correctly afterwards (with padding). It creates some glitches.
Log output
No response
Steps to reproduce
dagger do --log-format=tty -p ci.cue test
Dagger version
v0.2.22
OS version
Ubuntu 20.04
Notes:
- Creation of
cue.mod/usrduring init was removed for simplification - Removed concept of "root" module because the distinction is only useful in some advanced cases
- Changed foo/bar references to example.com except for the final "Practice" examples. I feel foobar is more ok in tests but not in docs. I'd like a more realistic (albeit simple) example in the end, but left mostly as is for now.
- Changed
#Fooaction to use action outputs as the result is much cleaner than looki...
What are you trying to do?
Sometimes you want to push an image to multiple tags (e.g., 0.1.0 and latest). BuildKit supports this by setting name to multiple values split by a comma:
push: core.#Push & {
dest: "localhost:5042/test1:\(randomString.output),localhost:5042/test1:latest,localhost:5042/test1:random"
input: randomString.image.output
config: env: FOO: randomString.output
}
Full plan
package main
import (
"dagger.io/dagger"
"dagge...
There's a sort of convention that if a package has a default image, then it's accessible as .#Image.
Signed-off-by: Helder Correia
Problem
We want to protect the user from trying to nest core actions since they'll be ignored for execution. As described in the following issue, the core.#Stop and core.#SendSignal core actions reference core.#Start as a valid use case here:
Solution
Refactor out this pattern to avoid referencing another core action directly. Most likely using a field from it instead.
TODO: design proposal
Resolves #2303
Overview
Nested core actions are ignored in cue/flow, but still can be used for forcing dependencies with other core actions.
If we want to protect the user against a mistake, we must also change this forced dependency pattern to use a field instead of the core action itself.
Error example
From running the tests/plan/validate/nested/nested.cue test:
actions.test.shallow: found nested core action: actions.test.shallow._write:
./tests/p...
Display dagger doc with style in markdown color
Dark

Light

Other?
We can create dedicated style if we want (derive Dagger design color?)
Resolves: #2456
Signed-off-by: Vasek - Tom C
While integrating various tools into Dagger plans, several patterns emerged to allow users the customization of base images/tool versions. While one isn't necessarily better than the other, there should be some guidelines for which patterns to use in Universe to make maintenance easier.
The patterns I've seen so far:
- No specific API, users can change the container image of an action through
input - Definition accepts a
versionparameter that downloads a default image, otherwise u...
Dagger Cloud run URL
https://dagger.cloud/runs/ab98d285-7037-48db-8491-0f157049e291
What happened? What did you expect to happen?
The core.#CacheDir seem to not store the modification done from the container. It can be reproduced by running dagger do test multiple times and observe the "./export/ls" which should be appended from result of each execution but instead the content is replaced each time the dagger do is executed. Unless i'm mistaking the way core.#CacheDir works, si...
If you used https://dagger.cloud with dagger let us know what worked well and what you wish was better. All & any feedback welcome!
If you are curious to learn more about how Dagger Cloud makes debugging dagger issues easier, this doc page explains how to get started: Debugging with Dagger Cloud.
@mircubed @marcosnils please edit this as you see fit (maybe starting with this comment). I just needed a link to...
Docs have been following an incremental id/name slug policy from the start. The id shall be represented on all the incoming docs (with a few exceptions) and shall not conflict with each other. Fixes the current conflicts
Signed-off-by: guillaume
I was using Dagger Cloud yesterday and noticed a few issues:
- run doesn't finish: https://dagger.cloud/runs/e15a94ac-51ec-4aa3-a638-ffc44369978c
- no plan showing when it doesn't evaluate: https://dagger.cloud/runs/07e56777-ef54-4dfe-8360-768434140284 (there are a few others, like this one https://dagger.cloud/runs/58ad0726-19b9-4d1f-9893-04f533b61ce2)
- run command is difficult to read: https://dagger.cloud/runs/4d827557-f493-4d71-a8a5-2fabd867b4a6
- CUE plan coloring after `rm -rf cu...
What are you trying to do?
When people see the CUE code, [some (myself and some other daggernaut as well)](#help-old-do-not-post message) try to actually access that URL.
Except for now, there is no service running at that address.
Why is this important to you?
It would be great if we could host some documentation server at that URL, so people could actually explore what there is in this package. It would improve self explora...
Hi ๐๐ป
First, a firm handshake to the team behind Dagger, you're doing a great job easing our CI's ๐
This discussion is focused on how Dagger works and how it may be adapted to specific needs, I've been through the documentation and the API (both dagger.io and universe.dagger.io) and I didn't found anything about using Dagger as an orchestrator on top of tools like Makefile / Taskfile, did I miss something?
Here's the use case I'm facing:
- The project use Docker / Dock...
Hello ๐
Thanks for your message!
Could Dagger launch "os commands / tools" like Makefile or should I "rewrite" steps via the Dagger API?
Every Dagger's instruction are done in containers so you'll need to use client to interact with your host's filesystem.
But yes, you can create actions as you would do in a Makefile.
For an example, so our own Dagger's CI, you'll see that we defined ...
This is great, thank you for writing it up @sagikazarmark!
This reads to me like a section (or a few!) from our Package Coding Style doc. Here is the source of truth.
WDYT @helderco, should we add these three new items to that page?
It confuses users and is only needed in an advanced case.
Signed-off-by: Helder Correia
I was using Dagger Cloud yesterday and noticed a few issues:
Looking at your runs, seems like you're using an outdated devel dagger version: https://github.com/dagger/dagger/commit/0c669c58c
Mind bumping to the latest release and trying again please? :pray:
- long run commands are not easy to read (line wrap): https://dagger.cloud/runs/4d827557-f493-4d71-a8a5-2fabd867b4a6
cc @slumbering UI feedback
- CUE plan coloring after
rm -rf cue.mod/pkg/*stops working properly: https://dagger.cloud/runs/4d827557-f493-4d71-a8a5-2fabd867b4a6
yes, this is because there's no current JS cue highlighter. We have discussed about this and we're looking for alternatives.
- showing logs in full-screen, [similar to how Papertrail used to do i...
What is the issue?
When you pass a decoded secret to a dagger.#Secret field, the validator panics.
Essentially this:
token: dagger.#Secret & decode.output.apiToken.contents
When checking for core types, we need to do it only if it's a struct:
// Core types (FS, Secret, Socket): make sure they are references, otherwise abort.
case plancontext.IsFSValue(v) || plancontext.IsSecretValue(v) || plancontext.IsSocketValue(v):
As a workaround for now t...
I don't think this is about coding style. More about useful action patterns (https://github.com/dagger/dagger/issues/2481).
What are you trying to do?
I have a fairly complex plan with nested actions. dagger do --help is great, but a user has to run it multiple times to get a full view of the available actions.
Why is this important to you?
It would be a helpful feature for users who aren't familiar with the dagger plan to have one command that provides an aggregate view of all of the act...
Replying separately with my opinion, btw.
What are you trying to do?
In a dagger plan, if you include two Yarn actions and you don't specify a project field (which is optional), that will cause undesired effect in caching since both actions will share the same cache id as the project field is used here https://github.com/dagger/dagger/blob/main/pkg/universe.dagger.io/yarn/yarn.cue#L134 and here https://github.com/dagger/dagger/blob/main/pkg/universe.dagger.io/yarn/yarn.cue#L141 respectively.
An evident proposal to ...
Bumps google.golang.org/grpc from 1.47.0 to 1.48.0.
Release notes
Sourced from google.golang.org/grpc's releases.
Release 1.48.0
Bug Fixes
xds/priority: fix bug that could prevent higher priorities from receiving config updates (#5417)
RLS load balancer: don't propagate the status code returned on control plane RPCs to data plane RPCs (#5400)
New Features
stats: add support for multiple stats handlers in a single client or server (#5347)
gcp/observabili...
We've started a monthly newsletter! We will post copies of each month's newsletter on our discussion board. If you'd like to have the newsletters come directly to your inbox, you can subscribe here.
Latest News
Dagger Cloud Alpha Release
Recently, we did a first alpha release of Dagger Cloud. The tool gives you the ability to ce...
You're right, there's several patterns that have emerged and we need a consensus.
The way I see it, we should move away from having a default image inside main actions.
Two reasons:
- Can't stack default values if you want to create a higher abstraction on top;
- Even if you override with your own custom image, the default one is still being evaluated and executed, which is wasteful.
Here's my recommendations for conventions...
Default package image to cover most c...
Sure thing, we can add them as a separate doc page.
This seems like a complicated area, especially the default images. I had to read it five (5) times to start understanding it. I can see this getting others too, like @rawkode in this context: #help-old-do-not-post message (thanks for the connection @helderco). Pretty sure this will continue coming up until we clarify a few things. Leaving it at this for now.
Once again, thank you @sagikazarmark for kicking this off โฝ๏ธ
This is similar to https://github.com/dagger/dagger/pull/2766, but with a GHA cache fix. Integration tests pass consistently locally, on Linux, but fail consistently on GitHub Actions. My only explanation is the GitHub Actions cache. This is the follow-up to this comment: https://github.com/dagger/dagger/pull/2766#issuecomment-1183851791
FWIW, I expect integration tests to fail for this commit, same as https://github.com/dagger/dagger/runs/7331502142?check_suite_focus=true
I'm failing to understand how this would work for tools like golangci, goreleaser or GitHub CLI.
Given the following actions:
golangci.#Lintgoreleaser.#Releasegithub.#CreateReleasegithub.#OpenPullRequest
Would you create a "simple" variant with a default image? Or how would the "interface" look like in this case?
Would you create a "simple" variant with a default image?
Yes.
- there should be a version without a default image, where you're required to provide during usage
- there should be an image definition, e.g.,
golangci.#Image, to easily use it above for the more most common case - there should be a variation of the action where the package's
#Imageis already set up for convenience
Each point builds upon the last, from flexibility to simplified usage.
What I'm ...
This change in the Netlify.toml will redirect https://docs.dagger.io/1241/dagger-cloud/ to https://docs.dagger.io/1243/dagger-cloud/
Signed-off-by: crjm
Bumps @docusaurus/core from 2.0.0-beta.22 to 2.0.0-rc.1.
Release notes
Sourced from @โdocusaurus/core's releases.
2.0.0-rc.1 (2022-07-14)
:bug: Bug Fix
docusaurus
#7776 fix(core): swizzle --eject js should not copy theme .d.ts files (@โslorber)
#7750 fix(deploy): revert "feat(deploy): copy local git config to tmp repo (#7702)" (@โghostsquad)
docusaurus-plugin-sitemap
#7774 fix(sitemap): complete gracefull...
The way I see it, docker.#Run expects an image as an input parameter by definition, whereas you wouldn't pass a container image to a lint command, so they are somewhat different.
From a consumer perspective, the API provided by these CUE packages let me run and parametrize the tools I wanted to use. The fact that I need to run them as container images is kind of an implementation detail. So if we are looking for a driving force for API design decisions, I would approach from this directi...
Yes, that's it. And I like the word "Base" much better ๐
You wouldn't pass a container image to a lint command, but golangci.#Lint does have it's own internal image, which you may need to customize for some reason:
_image: docker.#Pull & {
source: "index.docker.io/golangci/golangci-lint:v\(version)"
}
So in that sense, it's the same thing, except in this case it's not a default, it's hardcoded. What really matters is the **presence of a default sub-action that c...
Yes, that's it. And I like the word "Base" much better ๐
You wouldn't pass a container image to a lint command, but golangci.#Lint does have it's own internal image, which you may need to customize for some reason:
_image: docker.#Pull & {
source: "index.docker.io/golangci/golangci-lint:v\(version)"
}
So in that sense, it's the same thing, except in this case it's not a default, it's hardcoded. What really matters is the **presence of a default sub-action that c...
Throwing a few more options out there:
- Template (eg.
LintTemplate) - Command (eg.
LintCommand) - Definition (or Def) (eg.
LintDefinition) (this is somewhat redundant) - Proto (eg.
LintProto)
I wonder if CUE has a term for what we are trying to define.
The problem with bash.#Run is that if the user provides an image without bash, it fails. This is fine, until you consider the use-case of yarn.#Script, which uses bash.#Run internally and it's a pain to use a custom image with recent versions of node, as you need to inject it into the yarn.#Run.input and yarn.#Run.install.container.input.
Now, this could be a design issue with yarn.#Run and I could have added the shell override to bash.#Run quite easily - but then it wouldn't...
If plan validation fails, like checking action's inputs and outputs,
this enables the plan to be uploaded to DC if the user is logged in
Signed-off-by: Marcos Lilljedahl
Rather than using first version of CUE - head -1 - from go.mod, we want to use the last version - tail -n 1. While I am not sure why we have two versions of CUE in the go.mod, based on various internal discussions, I do know that there are various edge case issues with CUE > 0.4.1. With the current progress that upstream contributions are making, we continue being stuck with 0.4.1 for now. Related to:
What is the issue?
There's an edge case during plan validation where IsReference() is returning false.
// doesn't work
actions: test: #Foo & {
bar: #Bar
}
#Foo: {
bar: #Bar
}
This should be the same as:
// works
actions: test: #Foo
#Foo: {
bar: #Bar & #Bar
}
In this case, validation is failing on this field from docker.#Run:
export: rootfs: dagger.#FS & _exec.output
v.ReferencePath() returns an empty value.
Log ...
Fixes #2789
The following issues were fixed in turn:
- Fix panic while checking core type;
- Fix undefined field error for
dagger.#Secret & decoded.output.FOO.contentsreferences; - Improve error message when making a typo with exec env.
Signed-off-by: Helder Correia
\cc @rawkode @marcosnils
What are you trying to do?
Users onboarding on Dagger sometimes need to login to their docker account in order to avoid triggering the rate limiting pull issues on the docker hub. However, most of our packages don't easily enable that.
Issue based on comments: https://github.com/dagger/dagger/issues/2238#issuecomment-1183530615
Solution:
The way @helderco suggested it was just to have two settings (e.g., DOCKERHUB_AUTH_USER, DOCKERHUB_AUTH_PASS) to apply in Go if they exist...
Add global dockerhub_auth_user and dockerhub_auth_password env variables, to enable login to docker hub (only) and avoid being limited by rate-limiting free accounts.
Fixes #2804
Signed-off-by: guillaume
What are you trying to do?
I want to add a new helm action, helm.#Upgrade which is more useful than install in pipelines that run often. Additionally, this action should have more options to control the deployment, such as setting flags and values.
The usage could look something like this:
release: helm.#Upgrade & {
kubeconfig: client.commands.kubeconfig.stdout
workspace: client.filesystem.".".read.contents
name: "vault"
repo: "https://helm.releases...
Signed-off-by: Nico Braun
resolve: #2806
Note This is a prototype implementaton. Feedback for improvement would be appreciated.
Changes
- modify helm base image to run with /workspace as workdir
- add
#Upgradeaction inuniverse.dagger.io/alpha/kubernetes/helm
https://github.com/moby/buildkit/blob/v0.10.3/go.mod#L62-L68
Otherwise we can introduce data races and other weird behaviour:
- (jaeger v1.6.0) data races https://github.com/dagger/dagger/runs/7359366602?check_suite_focus=true#step:8:1433
- (jaeger v1.8.0) conflicting Schema URLs https://github.com/dagger/dagger/runs/7358945187?check_suite_focus=true#step:8:2066
These PRs have more context:
[dagger/dagger] Issue opened: #2809 Move template repos from personal GitHub repos to \`dagger\` org
This issue will be for coordination of moving template repos into the dagger organization in GitHub.
- [X] means done
- [ ] node yarn
- [ ] node npm
- [ ] python
- [ ] ...
- [ ] ...
- [ ] ...
- [ ] ...
Fixes issue #2802.
Transforms the export key of docker.#Run from rootfs: dagger.#FS & _exec.output to rootfs: _exec.output.
The previous unification made Cue not return any selector for the given expression.
To give more context, the below plan, with or without the first bar key commented, retrieves the same refPath. However, one has Selectors, the other is nil:
dagger.#Plan & {
actions: test: #Foo & {
// commenting this line fixes the error
bar: #Bar
...
CI seems to be broken due to a test on the universe/alpha/aws/cdk/python package.
It checks the python version with python version command which doesn't seem to exist
Peer: @gerhard
Signed-off-by: guillaume
What is the issue?
From user:
So, the first line I'm not sure of is: FROM ubuntu:18.04 as PHP
Then....
ENV DEBIAN_FRONTEND noninteractive
Could we have an example on the website, that shows each of the available commands translated?
What is the issue?
We advise users to generally avoid raw strings here: https://docs.dagger.io/1226/coding-style/#avoid-raw-strings
but they are needed when doing shell style line continuation such as
dockerfile: contents: """
FROM ubuntu:18.04 as PHP
ENV DEBIAN_FRONTEND noninteractive
RUN apt-get update && apt-get install -y \
nano \
....
where the above throws an error
ERROR system | failed to load plan: unknown escape sequence:
the err...
Tests on my branch were failing because of weirdness in this script.
First the python version didn't find the version file.
Then the node version bumped and made the test fail.
Explore moving off Docker Hub for public images due to rate limiting
#2804
https://github.com/dagger/dagger/pull/2805
We use Docker Hub for our public images in Universe, especially alpine.
Bumps github.com/sirupsen/logrus from 1.8.1 to 1.9.0.
Commits
f8bf765 Merge pull request #1343 from sirupsen/dbd-upd-dep
ebc9029 update dependencies
56c843c Merge pull request #1337 from izhakmo/fix-cve
41b4ee6 update gopkg.in/yaml.v3 to v3.0.1
f98ed3e Merge pull request #1333 from nathanejohnson/bumpxsys
2b8f60a bump version of golangci-lint
0db10ef bump version of golang.org/x/sys dependency
85981c0 Merge pull request #1263 from rubensayshi/fix-race
7...
Bumps cypress from 10.3.0 to 10.3.1.
Release notes
Sourced from cypress's releases.
v10.3.1
Changelog: https://docs.cypress.io/guides/references/changelog#10-3-1
Commits
ae4a9d8 10.3.1 release
1da95a7 fix: Determine global mode based on whether there is a current project (#22838)
2aa7b93 fix: Correct pluralization in Spec Pattern (#22773)
89acf9c chore: add types to screenshots (#22768)
0aebe4a trigger build for 10.3.1
1643161 fix: show info mess...
Bumps @svgr/webpack from 6.2.1 to 6.3.0.
Release notes
Sourced from @โsvgr/webpack's releases.
v6.3.0
Bug Fixes
core: types field in package.json (#693) (a491ace)
package.json: fix exports (#745) (2a368d1)
Features
add descProp option (#729) (a0637d4)
cli: output file name when error happen to handling a file (#702) (0ec1fbd)
Changelog
Sourced from @โsvgr/webpack's changelog.
6.3.0 (2022-07-18)
Bug Fixes
core: types field in package.json (#693) ...
Bumps concurrently from 7.2.2 to 7.3.0.
Release notes
Sourced from concurrently's releases.
v7.3.0
What's Changed
Export package.json path by @โgustavohenke in open-cli-tools/concurrently#339
Commits
1220aeb 7.3.0
f94b456 Export package.json path (#339)
30ffed0 Use full link for license badge
df632df Update description of the badges
c6c5409 Replaces badges in README
02b9082 Enhance tests (#335)
cc05702 Switch to new CI badge
39beb72 Fi...
Refactored "runcompleted" login so it now better tracks different exit
points in the program and allowing to display more accurate information
in DC
Signed-off-by: Marcos Lilljedahl
Bumps terser from 5.10.0 to 5.14.2.
Changelog
Sourced from terser's changelog.
v5.14.2
Security fix for RegExps that should not be evaluated (regexp DDOS)
Source maps improvements (#1211)
Performance improvements in long property access evaluation (#1213)
v5.14.1
keep_numbers option added to TypeScript defs (#1208)
Fixed parsing of nested template strings (#1204)
v5.14.0
Switched to @โjridgewell/source-map for sourcemap generation (#1190, #1181)
Fixe...
What are you trying to do?
After dagger releases are crafted, homebrew update should fetch the latest version. There's a GH action that can be used for this.
ref: https://github.com/Homebrew/homebrew-core/pull/105746#issuecomment-1190567751
c
cc @gerhard
Why is this important to you?
keep dagger updated
How are you currently working around this?
downloading the new binary without homebrew.
Bumps go.opentelemetry.io/otel/trace from 1.4.1 to 1.8.0.
Release notes
Sourced from go.opentelemetry.io/otel/trace's releases.
Release v1.6.3
Fixed
Allow non-comparable global MeterProvider, TracerProvider, and TextMapPropagator types to be set. (#2772, #2773)
Release v1.6.2
1.6.2 - 2022-04-06
Changed
Don't panic anymore when setting a global TracerProvider or TextMapPropagator to itself. (#2749)
Upgrade go.opentelemetry.io/proto/otl...
Bumps go.opentelemetry.io/otel from 1.4.1 to 1.8.0.
Release notes
Sourced from go.opentelemetry.io/otel's releases.
Release v1.6.3
Fixed
Allow non-comparable global MeterProvider, TracerProvider, and TextMapPropagator types to be set. (#2772, #2773)
Release v1.6.2
1.6.2 - 2022-04-06
Changed
Don't panic anymore when setting a global TracerProvider or TextMapPropagator to itself. (#2749)
Upgrade go.opentelemetry.io/proto/otlp in go.open...
Directly integrate server's start in dagger to simplify the usage since users
will not have to install another binary to use the lsp.
Signed-off-by: Vasek - Tom C
Signed-off-by: Joel Longtine
Signed-off-by: Jeremy Adams
fixes #2599
tested in GitLab here: https://gitlab.com/jpadams301/test-ci/-/jobs/2749236088
This one is important for my organization. Also, TeamCity supports inheritance, while Jenkins and others do not.
Example: root project (with secrets to access git and triggers for pull request) has a child of build artifacts, which builds binaries on various platforms, and this has test children pipelines for integration tests and unit tests that consume the artifacts, so root > build > {unit_tests, integration_tests}.
, so for example, integration test pipeline and unit test p...
TeamCity support is important to my organization.
I am interested in Spinnaker CD pipelines, which are reflected in JSON, and can be downloaded. They can also be uploaded with changes to create new pipelines.
I am interested in Spinnaker CD pipelines, which are reflected in JSON, and can be downloaded. They can also be uploaded with changes to create new pipelines. There's a CLI tool that I use to manage the pipelines https://spinnaker.io/docs/guides/spin/pipeline/
Sounds like an ideal use for Dagger. You could consume/generate the Spinnaker JSON and invoke the CLI. Let me know if you'd like to set up a POC/pilot to get that going :)
@darkn3rd if you have something that could help start a simple Team City example (or links), that would be great. Also PRs accepted ;)
Inspiration: https://docs.dagger.io/1201/ci-environment
Seems to not be possible at the moment even though Buildkit support is available in preview since --privileged=true is still not supported
https://jira.atlassian.com/browse/BCLOUD-13420
and we currently run Buildkit as --privileged in Dagger.
https://github.com/dagger/dagger/blob/main/util/buildkitd/buildkitd.go#L238
<img width="1726" alt="Screen Shot 2022-07-20 at 11 34 35 PM" src="https://user-images.githubusercontent.com/3187222/180145974-31898289-810e-4006-bcc5-478f2c8517a2.png"...
Signed-off-by: jffarge
This PR also includes a "real" Doppler token that has READ ONLY permissions on
a single config within a single project, which has a single key-value pair:
SG1=P4X-639
Signed-off-by: David Flanagan
It pointed to the Dagger 0.1 docs.
I didn't find the "build from source" content on the new install page, so I didn't change that link yet.
Signed-off-by: Miranda Carter