122 Commits

Author SHA1 Message Date
Guillaume Tardif
7fac6bf766 Avoid running build/tests/lint twice on master with master.yml 2020-06-30 11:52:44 +02:00
Guillaume Tardif
f3cbbc48b8 Aci e2e tests moved to master build only 2020-06-30 10:14:19 +02:00
Guillaume Tardif
eda438aaed Added basic support for service principal login, run ACI e2e tests with it 2020-06-29 20:35:23 +02:00
Djordje Lukic
e033ca27d2 Run windows build/test only on master
The regular CI will only run on pull requests
2020-06-22 10:16:07 +02:00
Djordje Lukic
652141c993 Use latest version of actions/cache 2020-06-18 09:44:34 +02:00
Djordje Lukic
39042aa8bd Build example and local backend conditionaly
* `make` will build the cli with all backends exnabled
* `make cross` will cross build without the example and local backend

You can still cross compile with all backends by doing

```console
$ BUILD_TAGS=example,local make cross
```

Signed-off-by: Djordje Lukic <djordje.lukic@docker.com>
2020-06-15 18:02:30 +02:00
Djordje Lukic
f0efaf7a79 Remove node test, node-sdk has these tests
Signed-off-by: Djordje Lukic <djordje.lukic@docker.com>
2020-06-15 11:41:50 +02:00
Guillaume Tardif
93984f8c68 Removed test requiring linux containers 2020-06-11 12:58:58 +02:00
Guillaume Tardif
6bfdded047 Windows CI 2020-06-11 10:44:30 +02:00
Djordje Lukic
11339761ca Change the way a context is stored
Initially we stored the context data in the `Metadata` of the context
but in hindsight this data would be better of in the `Endpoints` because
that's what it is used for.

Before:
```json
{
  "Name": "aci",
  "Metadata": {
    "Type": "aci",
    "Data": {
      "key": "value"
    }
  },
  "Endpoints": {
      "docker": {}
  }
}
```

After:
```json
{
  "Name": "aci",
  "Type": "aci",
  "Metadata": {},
  "Endpoints": {
      "aci": {
          "key": "value"
      },
      "docker": {}
  }
}
```

With this change the contexts that we create are more in line with the contexts the docker cli creates.

It also makes the code less complicated since we don't need to marsal twice any more. The API is nicer too:

```go
// Get a context:
c, err := store.Get(contextName)

// Get the stored endpoint:
var aciContext store.AciContext
if err := contextStore.GetEndpoint(currentContext, &aciContext); err != nil {
	return nil, err
}
```
2020-05-22 16:32:43 +02:00
Djordje Lukic
95e07a2134 Add default context to the context ls output 2020-05-20 18:39:10 +02:00
Djordje Lukic
e902e2ad93 Add pull request template 2020-05-20 14:36:46 +02:00
Guillaume Tardif
5c873c1a84 Release CI config 2020-05-18 22:55:50 +02:00
Guillaume Tardif
073832631f First e2e test running grpc e2e test (js test client) 2020-05-18 17:00:16 +02:00
Djordje Lukic
693aa7b849 Remove golangci-lint action, use executable
The github action we were using had to be rebuilt on each build, we now
start from base go 1.14 and just download the golangci-tool and run it.
This saves around 20-30 seconds on each build.
2020-05-15 09:17:01 +02:00
Djordje Lukic
7b26e8e836 Faster build
* Run  in parallel
  * lint
  * test/build/e2e test
* use cache for go
* do not use docker for building
* remove useless dependencies from the base image

Build time passes from 5 minutes to 1 minute 30 seconds
2020-05-14 21:16:31 +02:00
Guillaume Tardif
35c5073cc0 First e2e tests running locally (with example backend) 2020-05-05 14:40:30 +02:00
Djordje Lukic
4e9a4185af Add make lint and run it on CI 2020-05-05 10:50:30 +02:00
Djordje Lukic
bb017c490e Only install required go dependencies 2020-04-30 17:47:28 +02:00
Djordje Lukic
5cbfa2778e Use github action to install protoc 2020-04-30 17:45:48 +02:00
Djordje Lukic
04e2710380 Use setup-dev.sh script 2020-04-30 17:41:59 +02:00
Djordje Lukic
cc87bbe34e
Add github actions 2020-04-30 17:37:41 +02:00