Commit Graph

79 Commits

Author SHA1 Message Date
Andrea Luzzardi
5a1d4bff62 Support loading artifacts into a Docker Engine
This adds support to loading artifacts (e.g. docker.#Build,
os.#Container, ...) into any arbitrary docker engine (through a
dagger.#Stream for UNIX sockets or SSH for a remote engine)

Implementation:
- Add op.#SaveImage which serializes an artifact into an arbitrary path
  (docker tarball format)
- Add docker.#Load which uses op.#SaveImage to serialize to disk and
  executes `docker load` to load it back

Caveats: Because we're doing this in userspace rather than letting
dagger itself load the image, the performance is pretty bad.

The buildkit API is meant for streaming (get a stream of a docker image
pipe it into docker load). Because of userspace, we have to load the
entire docker image into memory, then serialize it in a single WriteFile
LLB operation.

Example:

```cue
package main

import (
	"alpha.dagger.io/dagger"
	"alpha.dagger.io/docker"
)

source: dagger.#Input & dagger.#Artifact

dockersocket: dagger.#Input & dagger.#Stream

build: docker.#Build & {
	"source": source
}

load: docker.#Load & {
	source: build
	tag:    "testimage"
	socket: dockersocket
}
```

Signed-off-by: Andrea Luzzardi <aluzzardi@gmail.com>
2021-10-12 14:16:01 -07:00
Andrea Luzzardi
7364951e95 docs: define sidebar manually
Signed-off-by: Andrea Luzzardi <aluzzardi@gmail.com>
2021-10-08 16:18:02 -07:00
Richard Jones
eadaf73d3c
regenerated docs
Signed-off-by: Richard Jones <richard@dagger.io>
2021-09-28 09:02:38 -06:00
Sam Alba
9120c52545
Merge pull request #1003 from samalba/docker-run-local
Docker run local
2021-09-23 15:28:26 -07:00
Tom Chauveau
7991991a3c
Update documentation
Signed-off-by: Tom Chauveau <tom.chauveau@epitech.eu>
2021-09-22 20:29:20 +02:00
Sam Alba
0f6a934fd0 docs: updated generated content
Signed-off-by: Sam Alba <sam.alba@gmail.com>
2021-09-21 17:34:51 -07:00
Andrea Luzzardi
fb7cb95b06
Merge pull request #986 from aluzzardi/socket-support
dagger.#Stream support
2021-09-20 11:08:06 -07:00
Andrea Luzzardi
0f4a55a482 socket -> stream
Signed-off-by: Andrea Luzzardi <aluzzardi@gmail.com>
2021-09-17 15:19:15 -07:00
Andrea Luzzardi
5480fb991d dagger.#Socket support
Signed-off-by: Andrea Luzzardi <aluzzardi@gmail.com>
2021-09-17 11:53:09 -07:00
Sam Alba
12e457e9e9
Merge pull request #971 from VazeeKevin/tasks/improve-stdlib-docker
stdlib/docker: update #Build to incorporate image from Dockerfile
2021-09-16 17:50:28 -07:00
Kevin Poirot
3e14920062 Update Docker #Build to incorporate image from Dockerfile
Signed-off-by: Kevin Poirot <kevin@vazee.fr>
2021-09-15 08:55:59 +02:00
Guillaume de Rouville
46362ed247 Add zone in GCP.#Config
Signed-off-by: Guillaume de Rouville <guillaume.derouville@gmail.com>
2021-09-14 13:43:31 +02:00
Sam Alba
53cbdcf3c0 docs: updated docs generation
Signed-off-by: Sam Alba <sam.alba@gmail.com>
2021-09-13 10:40:18 -07:00
Sujay Pillai
439fb4ee82 Adding support for azure static webapp
Signed-off-by: Sujay Pillai <sujayopillai@gmail.com>
2021-09-13 10:39:18 -07:00
Sam Alba
af1d06f503
Merge pull request #945 from benja-M-1/feat/gcp-secrets
Add secrets deployment for GCP
2021-09-10 11:09:25 -07:00
Benjamin Grandfond
45ea30da55 Add secrets deployment for GCP
Signed-off-by: Benjamin Grandfond <benjamin.grandfond@gmail.com>
2021-09-10 09:21:34 -07:00
Tom Chauveau
733cac09d3 argocd.#Sync now retrieve status
Signed-off-by: Tom Chauveau <tom.chauveau@epitech.eu>
2021-09-10 09:10:21 -07:00
Tom Chauveau
ef112e21ec Fix caching issue on argoCD package
Signed-off-by: Tom Chauveau <tom.chauveau@epitech.eu>
2021-09-10 09:10:21 -07:00
Tom Chauveau
05b165bcc8 Supports both basicAuth & Token
Signed-off-by: Tom Chauveau <tom.chauveau@epitech.eu>
2021-09-10 09:10:21 -07:00
Tom Chauveau
d34200c9f6 Fix CI check
Signed-off-by: Tom Chauveau <tom.chauveau@epitech.eu>
2021-09-10 09:10:21 -07:00
Tom Chauveau
9337eed2bb Update argocd documentation
Signed-off-by: Tom Chauveau <tom.chauveau@epitech.eu>
2021-09-10 09:10:19 -07:00
Kevin Poirot
f8f39ca75b stdlib: argocd app support
Signed-off-by: Kevin Poirot <kevin@vazee.fr>
2021-09-10 09:10:03 -07:00
jffarge
a2088a09ac docs: ♻️ merge API Reference and Universe menu entries
Signed-off-by: jffarge <jf@dagger.io>
2021-09-08 15:19:19 +02:00
Tom Chauveau
c05f7d50d4
Update kubernetes testing policy to test deployment from url
Signed-off-by: Tom Chauveau <tom.chauveau@epitech.eu>
2021-09-06 16:25:51 +02:00
Tom Chauveau
95040d8320 Improve git package according to Sam comments
Signed-off-by: Tom Chauveau <tom.chauveau@epitech.eu>
2021-09-03 02:29:31 +02:00
Tom Chauveau
4ad2c8e7e5 Add test on git.#Commit
Signed-off-by: Tom Chauveau <tom.chauveau@epitech.eu>
2021-09-03 02:29:31 +02:00
Guillaume de Rouville
6360ccc92b localstack/fix-input-bool-type: change localstack test input from str to bool
Signed-off-by: Guillaume de Rouville <guillaume.derouville@gmail.com>
2021-08-31 17:51:56 +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
58209b87d1 Doc update + linting + fix CI typo + fix port issue ECR
Signed-off-by: Guillaume de Rouville <guillaume.derouville@gmail.com>
2021-08-23 17:44:34 +02:00
Sujay Pillai
7481294a8c Adding support for azure storage
Signed-off-by: Sujay Pillai <sujayopillai@gmail.com>
2021-08-17 17:23:01 +08:00
Sujay Pillai
f979135961 Amending changes from @TomChv
Signed-off-by: Sujay Pillai <sujayopillai@gmail.com>
2021-08-12 01:51:41 +08:00
Guillaume de Rouville
bdd6b5a56e Port azure.#CLI from up to os.#Container + manual testing + integrate bats test
Signed-off-by: Guillaume de Rouville <guillaume.derouville@gmail.com>
2021-08-11 16:39:35 +02:00
Sujay Pillai
5908aa628e Adding support for azure and create a resource group
Signed-off-by: Sujay Pillai <sujayopillai@gmail.com>
2021-08-11 01:20:16 +08: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
25ff825f74 Update Cloud Run docs
Signed-off-by: Tihomir Jovicic <tihomir.jovicic.develop@gmail.com>
2021-07-05 12:43:26 +02:00
Tihomir Jovicic
104928f062 Merge branch 'main' into cloudrun-support 2021-07-05 11:51:39 +02:00
Guillaume de Rouville
ecd409951c docker.#Push: Set auth as optional
Signed-off-by: Guillaume de Rouville <guillaume.derouville@gmail.com>
2021-07-02 01:21:56 +02:00
Andrea Luzzardi
e020b23649
Merge pull request #628 from TomChv/improve-docker-push
Improve docker.#Push definition
2021-07-01 18:25:40 +02:00
Tihomir Jovicic
c2442120ca update cloudrun imports to use alpha.dagger.io
Signed-off-by: Tihomir Jovicic <tihomir.jovicic.develop@gmail.com>
2021-07-01 09:23:47 +02:00
Tihomir Jovicic
650caa8d4a Merge branch 'main' into cloudrun-support 2021-07-01 08:54:44 +02:00
Tom Chauveau
d10f2a49a5 Rename field according to @shykes review
Signed-off-by: Tom Chauveau <tom.chauveau@epitech.eu>
2021-06-30 16:58:04 +02:00
Tom Chauveau
7d1bbcc416 Fix docker hub login error when using image ref as target
Signed-off-by: Tom Chauveau <tom.chauveau@epitech.eu>
2021-06-30 16:58:04 +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
Tom Chauveau
b1ed40ffed Improve #docker.Push definition :
- Push to private registry
- Output ref and digest
- Update doc
- Add tests to universe.bats

Signed-off-by: Tom Chauveau <tom.chauveau@epitech.eu>
2021-06-30 16:58:04 +02:00
Scott Lewis-Kelly
635b9306b8 stdlib: Add GCS support
The interface and behavior is identical to S3.

Signed-off-by: Scott Lewis-Kelly <slewiskelly@slewiskel.ly>
2021-06-30 16:23:32 +02:00
Alvise
f807314668 Add maven package in stdlib
Signed-off-by: Alvise <vitalvise@gmail.com>
2021-06-29 15:09:32 +02:00
Andrea Luzzardi
539fa08ca1 docs: fix dagger.io->alpha.dagger.io references
Fixes #733

Signed-off-by: Andrea Luzzardi <aluzzardi@gmail.com>
2021-06-27 15:07:52 +02:00
Tom Chauveau
020c458921 Add project management in compose.#App definition
I found an issue when during tests execution : there was orphan.
It's because #App doesn't give way to specify the compose project,
by default it's the directory where you launch your app but in our
definition, it will always be source.

The problem is that if we launch two differents docker-compose in the same
server, his project name will be source for both and it will create
orphans problems on cleanup (by docker-compose down).

This case is exactly what we do in tests so I've add the field name
to specify the projet name and avoid that issue.

Signed-off-by: Tom Chauveau <tom.chauveau@epitech.eu>
2021-06-26 16:07:14 +02:00
Tom Chauveau
aaa6f8f351 Simplify tests
Signed-off-by: Tom Chauveau <tom.chauveau@epitech.eu>
2021-06-25 17:16:11 +02:00
Tom Chauveau
e4ac04c98c Update import to new alpha version
Signed-off-by: Tom Chauveau <tom.chauveau@epitech.eu>
2021-06-25 16:56:28 +02:00