Commit Graph

281 Commits

Author SHA1 Message Date
Richard Jones
33db6ab90a
using "$DAGGER"
Signed-off-by: Richard Jones <richard@dagger.io>
2021-12-10 11:02:34 -07:00
Richard Jones
518d76cbe2
previous cd fixed cue loading but broke reference to dagger binary
Signed-off-by: Richard Jones <richard@dagger.io>
2021-12-09 15:59:48 -07:00
Richard Jones
72708f9870
fixed test by CD
Signed-off-by: Richard Jones <richard@dagger.io>
2021-12-09 14:32:26 -07:00
Richard Jones
a80c48f241
removed --no-cache
Signed-off-by: Richard Jones <richard@dagger.io>
2021-12-09 11:36:30 -07:00
Richard Jones
026c7641b3
refactored test to use CUE validations rather than container stdout
Signed-off-by: Richard Jones <richard@dagger.io>
2021-12-09 11:30:15 -07:00
Richard Jones
69ee3750b8
cue fmt
Signed-off-by: Richard Jones <richard@dagger.io>
2021-12-08 16:45:54 -07:00
Richard Jones
28cebb1bf0
added test
Signed-off-by: Richard Jones <richard@dagger.io>
2021-12-08 16:24:16 -07:00
Andrea Luzzardi
1872af9b18 tests: move compute tests away
Signed-off-by: Andrea Luzzardi <aluzzardi@gmail.com>
2021-12-08 15:30:41 -05:00
Andrea Luzzardi
5b7b1cab79 Migrate dagger.#Secret and dagger.#Stream to new format
- Refactored to keep every transformation of built-in types (e.g. FS,
  Secret, etc) to/from CUE in the same place (plancontext)
- dagger.#Service and dagger.#Secret are now following the new FS-like format
  (e.g. `_service: id: string`)
- Backward compatibility
- dagger.#Stream is now an alias for dagger.#Service

Signed-off-by: Andrea Luzzardi <aluzzardi@gmail.com>
2021-12-01 17:33:35 -08:00
Andrea Luzzardi
a61e8dcb62 prepare the transition to #Plan.context
This change helps the transition between `dagger input` and `#Plan.context`.

In summary, the codebase now relies on a *context* for execution with mapping to *IDs*.
In the future, *context* will come from a `#Plan.context`.
In the meantime, a bridge converts `dagger input` to a plan context. This allows both *old* and *new* style configurations to co-exist with the same underlying engine.

- Implement `plancontext`. Context holds the execution context for a plan. Currently this includes the platform, local directories, secrets and services (e.g. unix/npipe).
- Contextual data can be registered at any point. In the future, this will be done by `#Plan.context`
- Migrated the `dagger input` codebase to register inputs in a `plancontext`
- Migrated low-level types/operations to the *Context ID* pattern.
  - `dagger.#Stream` now only includes an `id` (instead of `unix` path)
  - `dagger.#Secret` still includes only an ID, but now it's based off `plancontext`
  - `op.#Local` now only includes an `id` (instead of `path`, `include`, `exclude`.

Signed-off-by: Andrea Luzzardi <aluzzardi@gmail.com>
2021-11-19 11:29:38 -08:00
Tom Chauveau
a63c4e989a
Change "arch" into "platform" because it's more accurate.
Signed-off-by: Tom Chauveau <tom.chauveau@epitech.eu>
2021-11-05 16:21:21 +01:00
Tom Chauveau
8a3a3028fb
Add tests on architecture configuration
Signed-off-by: Tom Chauveau <tom.chauveau@epitech.eu>
2021-10-22 22:25:06 +02:00
Andrea Luzzardi
d763976ea9 tests: convert tests to new style
Signed-off-by: Andrea Luzzardi <aluzzardi@gmail.com>
2021-10-20 12:27:31 -07:00
Andrea Luzzardi
dd1bf18ec2 logger: TTY logs support (live update)
Signed-off-by: Andrea Luzzardi <aluzzardi@gmail.com>
2021-10-05 15:38:34 -07:00
Guillaume de Rouville
a7ca7e11ba Fix/dagger edit: wrong dir Path leads to infinite loop
Signed-off-by: Guillaume de Rouville <guillaume.derouville@gmail.com>
2021-09-26 20:56:22 +02:00
Richard Jones
68f18887da
changed workspace to project for tests
Signed-off-by: Richard Jones <richard@dagger.io>
2021-09-23 12:07:09 -06:00
Andrea Luzzardi
0f4a55a482 socket -> stream
Signed-off-by: Andrea Luzzardi <aluzzardi@gmail.com>
2021-09-17 15:19:15 -07:00
Andrea Luzzardi
408f147fab socket: add tests
Signed-off-by: Andrea Luzzardi <aluzzardi@gmail.com>
2021-09-17 11:53:09 -07:00
Richard Jones
e86985da16 adjust test to account for the new hash
Signed-off-by: Richard Jones <richard@dagger.io>
2021-09-16 09:23:51 -06:00
Guillaume de Rouville
0273fead4d fix/bug: infinite loop non-existent input dir path
Signed-off-by: Guillaume de Rouville <guillaume.derouville@gmail.com>
2021-09-14 16:26:27 +02:00
Tom Chauveau
a00fbb0f68
Update op.#PushContainer test to use secrets
Signed-off-by: Tom Chauveau <tom.chauveau@epitech.eu>
2021-08-31 13:04:57 +02:00
Guillaume de Rouville
08f395b70d Add auth to Git.#Repository
Signed-off-by: Guillaume de Rouville <guillaume.derouville@gmail.com>
2021-08-27 15:58:55 +02:00
Guillaume de Rouville
3b0e3f6919 Move private repository tests + implement env helper function
Signed-off-by: Guillaume de Rouville <guillaume.derouville@gmail.com>
2021-08-27 14:41:31 +02:00
Guillaume de Rouville
6fe0ec367a dagger input bool implementation
Signed-off-by: Guillaume de Rouville <guillaume.derouville@gmail.com>
2021-08-24 16:07:28 +02:00
Sam Alba
cb746e165f
Merge pull request #891 from TomChv/fix/input-git-subdir
Fix input git subdir argument
2021-08-19 20:30:15 +02:00
Tom Chauveau
3c1c0f13f6
Improve dagger input UX (solve #874)
Add new argument `--show-optional` to `dagger input list`.
Now by default, `dagger input list` will only show required input.
To get all inputs (including those with default value), you can use
that new argument.

Test has been updated to support changes.

Signed-off-by: Tom Chauveau <tom.chauveau@epitech.eu>
2021-08-17 17:13:30 +02:00
Tom Chauveau
c637549b15
Fix input git to correctly handle subdir argument (solve #884)
Previously, the subdir argument wa ignored by dagger input git.
I've fix that behavior and add a test.

Signed-off-by: Tom Chauveau <tom.chauveau@epitech.eu>
2021-08-17 15:06:28 +02:00
Sam Alba
2e883ae47c test: implemented test for invalid input
Signed-off-by: Sam Alba <sam.alba@gmail.com>
2021-07-12 11:10:18 +02:00
Andrea Luzzardi
06b671a528 commit missing cue.mod
Signed-off-by: Andrea Luzzardi <aluzzardi@gmail.com>
2021-07-08 17:52:21 +02:00
Andrea Luzzardi
f58ee5811b universe vendoring
Rather than injecting universe at runtime, this change will vendor
alpha.dagger.io in `cue.mod` directly.

Fixes #700

Signed-off-by: Andrea Luzzardi <aluzzardi@gmail.com>
2021-07-08 17:52:21 +02:00
Andrea Luzzardi
f8531fdb0b
Merge pull request #772 from aluzzardi/default-plan-dir
plan: default cue module to .
2021-07-07 17:34:23 +02:00
Andrea Luzzardi
6e215b194e use the workspace as the plan module
Signed-off-by: Andrea Luzzardi <aluzzardi@gmail.com>
2021-07-07 13:12:10 +02:00
Andrea Luzzardi
919d5576d0 plan: default cue module to .
Fixes #699

Signed-off-by: Andrea Luzzardi <aluzzardi@gmail.com>
2021-07-07 13:12:10 +02:00
Edgar Lee
0501ae91a5 Adds support for op.#FetchHTTP
Signed-off-by: Edgar Lee <edgarhinshunlee@gmail.com>
2021-07-06 14:37:52 -07:00
Tihomir Jovicic
104928f062 Merge branch 'main' into cloudrun-support 2021-07-05 11:51:39 +02:00
Tom Chauveau
2f710b0ce4 Fix login miss behavior and update op
Signed-off-by: Tom Chauveau <tom.chauveau@epitech.eu>
2021-07-01 14:08:49 +02:00
Tihomir Jovicic
650caa8d4a Merge branch 'main' into cloudrun-support 2021-07-01 08:54:44 +02:00
Tom Chauveau
58a67cf86b Improve parseAuthHost function to work for all ref
Signed-off-by: Tom Chauveau <tom.chauveau@epitech.eu>
2021-06-30 19:07:12 +02:00
Tom Chauveau
f842f1ed1d Remove old docker push and pull test
Signed-off-by: Tom Chauveau <tom.chauveau@epitech.eu>
2021-06-30 16:58:04 +02:00
Solomon Hykes
d7a805f42b stdlib: move all imports to alpha.dagger.io
Signed-off-by: Solomon Hykes <solomon@dagger.io>
2021-06-25 10:31:22 +00:00
Solomon Hykes
b1d52254b1 Tests: merge compute.bats into core.bats
Signed-off-by: Solomon Hykes <solomon@dagger.io>
2021-06-22 22:52:03 +02:00
Tihomir Jovicic
1b6187181d Merge branch 'main' into cloudrun-support 2021-06-22 12:30:48 +02:00
Andrea Luzzardi
83019a5414
Merge pull request #685 from TomChv/move-tests-to-universe
Move tests to universe
2021-06-21 17:41:43 +02:00
Andrea Luzzardi
8ccda8de0f
Merge pull request #693 from samalba/test-input-dir-ignore
test: added test for ignoring .dagger directory in input dir
2021-06-21 17:40:28 +02:00
Solomon Hykes
e8b8c47751 Remove original examples directory
Signed-off-by: Solomon Hykes <solomon@dagger.io>
2021-06-21 15:27:52 +02:00
Sam Alba
f4afe5d129 test: added test for ignoring .dagger directory in input dir
Signed-off-by: Sam Alba <sam.alba@gmail.com>
2021-06-21 15:14:18 +02:00
Solomon Hykes
53f4ef049a stdlib: dagger.#Output
Signed-off-by: Solomon Hykes <solomon@dagger.io>
2021-06-21 14:47:45 +02:00
Solomon Hykes
49277af680 Add simple test environment for core features
Signed-off-by: Solomon Hykes <solomon@dagger.io>
2021-06-21 14:47:45 +02:00
Tihomir Jovicic
6451e2e40d remove old gcp cloudrun tests
Signed-off-by: Tihomir Jovicic <tihomir.jovicic.develop@gmail.com>
2021-06-21 11:35:33 +02:00
Tihomir Jovicic
83eebf82fa Move Cloud Run image property to GCP config struct
Signed-off-by: Tihomir Jovicic <tihomir.jovicic.develop@gmail.com>
2021-06-21 10:57:26 +02:00
Tihomir Jovicic
5d8219a8f3 Add Cloud Run support
Signed-off-by: Tihomir Jovicic <tihomir.jovicic.develop@gmail.com>
2021-06-21 10:57:18 +02:00
Tom Chauveau
2e9a0d6509 Add test to universe
Signed-off-by: Tom Chauveau <tom.chauveau@epitech.eu>
2021-06-18 18:33:02 +02:00
Tom Chauveau
b999a3dd11 Remove old stdlib tests
Signed-off-by: Tom Chauveau <tom.chauveau@epitech.eu>
2021-06-18 17:54:50 +02:00
Solomon Hykes
a4e31949a3 Migrate integration test for universe/go
Signed-off-by: Solomon Hykes <solomon@dagger.io>
2021-06-17 16:38:58 +02:00
Guillaume de Rouville
ce41d25c52 Revert kubernetes/helm packages and tests from secret to str type, needed for docs
Signed-off-by: Guillaume de Rouville <guillaume.derouville@gmail.com>
2021-06-17 03:16:28 +02:00
Andrea Luzzardi
7f456b9131 tests: update plan config
Signed-off-by: Andrea Luzzardi <aluzzardi@gmail.com>
2021-06-16 18:58:56 +02:00
Andrea Luzzardi
f39a88e644 cue native: environments can reference a module instead of embedding
one.

Fixes #631

Signed-off-by: Andrea Luzzardi <aluzzardi@gmail.com>
2021-06-16 18:58:56 +02:00
Andrea Luzzardi
8de58eb3d0 tests: examples: react: use module . to run the test
Signed-off-by: Andrea Luzzardi <aluzzardi@gmail.com>
2021-06-16 18:58:56 +02:00
Guillaume de Rouville
6f9a61386e docs: remove package file
Signed-off-by: Guillaume de Rouville <guillaume.derouville@gmail.com>
2021-06-15 18:47:36 +02:00
Solomon Hykes
9fa89f1f22 stdlib tests: FIXMEs + call for help
Signed-off-by: Solomon Hykes <solomon@dagger.io>
2021-06-10 16:09:41 +02:00
Solomon Hykes
2976afad66 universe: spin out js/yarn tests
Signed-off-by: Solomon Hykes <solomon@dagger.io>
2021-06-10 16:09:41 +02:00
Solomon Hykes
d388c729bc universe: spin out alpine tests
Signed-off-by: Solomon Hykes <solomon@dagger.io>
2021-06-10 16:09:41 +02:00
Solomon Hykes
fcbdfe178a Move universe integration tests to universe dir.
Signed-off-by: Solomon Hykes <solomon@dagger.io>
2021-06-09 20:28:44 +00:00
Andrea Luzzardi
a53b9ec166 tests: use different container prefix for docker tests
Avoid name conflicts when random returns the same string

Signed-off-by: Andrea Luzzardi <aluzzardi@gmail.com>
2021-06-09 11:40:32 -07:00
Andrea Luzzardi
22329e3a4d stdlib: helm: fix chart repository
Signed-off-by: Andrea Luzzardi <aluzzardi@gmail.com>
2021-06-08 16:01:55 -07:00
Andrea Luzzardi
db0937c927 stdlib: add random package
Signed-off-by: Andrea Luzzardi <aluzzardi@gmail.com>
2021-06-08 15:15:01 -07:00
Andrea Luzzardi
4c40a87634 tests: fix random
Signed-off-by: Andrea Luzzardi <aluzzardi@gmail.com>
2021-06-08 11:34:16 -07:00
Andrea Luzzardi
7ce8dd26f1 tests: testConfig -> TestConfig
Signed-off-by: Andrea Luzzardi <aluzzardi@gmail.com>
2021-06-07 16:33:34 -07:00
Andrea Luzzardi
2acf0ce4e5 stdlib: docker: disable local #Run
Signed-off-by: Andrea Luzzardi <aluzzardi@gmail.com>
2021-06-07 16:33:10 -07:00
Andrea Luzzardi
ce5accd09c stdlib: docker: support running containers on the local docker engine
Depends on #570

Signed-off-by: Andrea Luzzardi <aluzzardi@gmail.com>
2021-06-07 16:33:07 -07:00
Andrea Luzzardi
4365541d4d
Merge pull request #579 from TomChv/refacto-random
Refactor random
2021-06-07 14:54:08 -07:00
Tom Chauveau
fdb91a7332 Refactor random generation into a definition to make it reusable
Signed-off-by: Tom Chauveau <tom.chauveau@epitech.eu>
2021-06-07 23:39:41 +02:00
Andrea Luzzardi
4f887b2295
Merge pull request #570 from aluzzardi/docker-socket
docker socket forwarding support
2021-06-07 13:32:24 -07:00
Andrea Luzzardi
9cdde1318f
Merge pull request #568 from aluzzardi/kubernetes-apply-resources
stdlib: kubernetes: rename #Apply to #Resources
2021-06-07 13:31:55 -07:00
Andrea Luzzardi
2671e5f321 disable docker socket support until we have security in place
Signed-off-by: Andrea Luzzardi <aluzzardi@gmail.com>
2021-06-07 13:18:46 -07:00
Andrea Luzzardi
15ee983b0f tests: add instructions to run a single test
Signed-off-by: Andrea Luzzardi <aluzzardi@gmail.com>
2021-06-07 11:30:11 -07:00
Andrea Luzzardi
31528989c1 docs: fix "superglu" typo
Signed-off-by: Andrea Luzzardi <aluzzardi@gmail.com>
2021-06-07 11:24:05 -07:00
Andrea Luzzardi
ac34df319a docker socket forwarding support
- This PR adds a new mount type: `docker.sock` (in addition to `cache`
  and `tmp`)
- It's then able to mount the LOCAL (as in, from the machine running
  dagger) docker socket inside the container by pretending to be an SSH
  Agent (hijacking the SSH agent forwarding support of buildkit)

Signed-off-by: Andrea Luzzardi <aluzzardi@gmail.com>
2021-06-04 16:14:25 -07:00
Andrea Luzzardi
a5e9ac8a0f stdlib: kubernetes: rename #Apply to #Resources
Code convention: use nouns instead of verbs whenever possible.

Reasoning: One can apply just about anything to Kubernetes via this:
deployment, load balancer, RBAC policy, a custom CRD resource, etc.

Upstream those are called resources: You give `kubectl apply` one or more
manifests and it will create the corresponding resources.

Signed-off-by: Andrea Luzzardi <aluzzardi@gmail.com>
2021-06-04 14:03:35 -07:00
Andrea Luzzardi
856aaeab73
Merge pull request #556 from TomChv/tests-fix-random
Always generate random
2021-06-03 11:26:37 -07:00
Sam Alba
e328e71e6c
Merge pull request #337 from TomChv/ci-kind-setup
Setup Kind cluster in CI
2021-06-03 09:08:49 -07:00
Tom Chauveau
2c6e67cb7d Update helm and kubernetes tests to use new dagger.#Secret definition
Signed-off-by: Tom Chauveau <tom.chauveau@epitech.eu>
2021-06-03 17:55:44 +02:00
Tom Chauveau
a39e87b179 docker.#Run now use secrets from dagger.#Secret
Signed-off-by: Tom Chauveau <tom.chauveau@epitech.eu>
2021-06-03 14:03:33 +02:00
Tom Chauveau
3a7494261f Always generate random
Signed-off-by: Tom Chauveau <tom.chauveau@epitech.eu>
2021-06-03 12:26:08 +02:00
Andrea Luzzardi
3605d399c9 stdlib: aws: s3: add #Sync
Signed-off-by: Andrea Luzzardi <aluzzardi@gmail.com>
2021-06-02 15:45:51 -07:00
Andrea Luzzardi
6aded2d3d4
Merge pull request #536 from aluzzardi/kubernetes-fixes
stdlib: kubernetes: misc fixes
2021-06-01 19:50:11 -07:00
Andrea Luzzardi
14a83a0680
Merge pull request #530 from samalba/env-outputs
Support Outputs list
2021-06-01 19:47:47 -07:00
Andrea Luzzardi
2e748c9c31 stdlib: kubernetes: misc fixes
- `source` is now optional
- `sourceInline` renamed to `manifest`
- `kubeconfig` is a `string` rather than a `dagger.#Secret`

Signed-off-by: Andrea Luzzardi <aluzzardi@gmail.com>
2021-06-01 19:13:56 -07:00
Andrea Luzzardi
c02a8b89cc
Merge pull request #480 from TomChv/docker-run
Add #Run definition to docker package
2021-06-01 14:54:44 -07:00
Andrea Luzzardi
413dec63a0
Merge pull request #529 from grouville/dagger_compute-out_of_bound
dagger compute out-of-bound
2021-06-01 13:29:34 -07:00
Andrea Luzzardi
e86cb7be6d
Merge pull request #535 from aluzzardi/dagger-homedir
use ~/.config/dagger rather than ~/.dagger
2021-06-01 13:23:43 -07:00
Andrea Luzzardi
c5c586ff71 use ~/.config/dagger rather than ~/.dagger
since `.dagger` directories have a special meaning now because of gitflow,
it's better not to have a `~/.dagger` since it's not a workspace and
it confuses dagger (e.g. `dagger new` from $HOME).

We don't store state there anymore, just keys and the last version
check, so it's okay to be in ~/.config IMO

Looking at my system, in ~/.config there's `gcloud`, `gatsby`, `gh`,
`yarn`, and others so it seems like a pretty common location.

Signed-off-by: Andrea Luzzardi <aluzzardi@gmail.com>
2021-06-01 12:38:14 -07:00
Sam Alba
2bd4679646 fixed ci
Signed-off-by: Sam Alba <sam.alba@gmail.com>
2021-06-01 15:12:08 +02:00
Sam Alba
3d1e37e1ab test: updates output list tests
Signed-off-by: Sam Alba <sam.alba@gmail.com>
2021-06-01 14:15:02 +02:00
Sam Alba
ec4730708d cue fmt
Signed-off-by: Sam Alba <sam.alba@gmail.com>
2021-05-31 16:42:01 +02:00
Sam Alba
44a919e7f8 test: implemented tests for output list
Signed-off-by: Sam Alba <sam.alba@gmail.com>
2021-05-31 15:56:58 +02:00
Guillaume de Rouville
d74efa2420 Fix index out of bound for Dagger compute inputs + add tests ["input-dir", "input-git", input-string"]
Signed-off-by: Guillaume de Rouville <guillaume.derouville@gmail.com>
2021-05-31 12:11:54 +02:00
Tom Chauveau
242b61972c Update sops version to fix CI
Signed-off-by: Tom Chauveau <tom.chauveau@epitech.eu>
2021-05-29 19:40:01 +02:00
Tom Chauveau
4b6315e2fc Handle fingerprint option for auth
Signed-off-by: Tom Chauveau <tom.chauveau@epitech.eu>
2021-05-29 18:29:39 +02:00
Andrea Luzzardi
b627b4bc88 add support for excludes in input dir
This adds support for `--include` and `--exclude` for directory inputs.

For instance, this is what you would want to use when passing dagger
repository as an input:

```
inputs:
    repository:
        dir:
            path: .
            exclude:
                - '**/node_modules'
                - cmd/dagger/dagger
                - cmd/dagger/dagger-debug
```

Signed-off-by: Andrea Luzzardi <aluzzardi@gmail.com>
2021-05-28 16:22:32 -07:00