Commit Graph
117 Commits
Author SHA1 Message Date
Hang Yan 34b827c97e Support use configmap as volume (#1216) 2019-12-28 01:02:27 +08:00
Hang Yan dd28e9220b Fix docker local build (#1212) 2019-12-27 10:26:42 +08:00
Hang Yan 1f0a097836 Support assign nodeport port in labels (#1210) 2019-12-26 23:45:58 +08:00
Hang Yan bc28ffc675 Upgrade deployment/daemonset to apps/v1 (#1207) 2019-12-26 16:36:11 +08:00
Mudit Verma 7f4be2a34d network int test fix (#1197) 2019-12-04 11:00:47 +08:00
João Vitor Paes de Barros do Carmo 30736a3973 Add support for file based secret (#1159)
* Support file based secret
* Fix issue about read-only volume path and add support to absolute path at long-syntax
2019-12-01 12:05:31 +08:00
Mudit Verma ac2b852955 Network Key Translation Feature and test cases (#1195) 2019-12-01 10:19:23 +08:00
Chander G 5857252c3d Merge top level non-service keys (#1187)
* merge top level non-service keys

docker-compose default behaviour is to merge these top level keys such
as `networks`
2019-11-28 14:18:49 +08:00
Charlie Drage d0526d1d75 Fix tests (#1175)
For some reason, tests have been coming back as always positive (despite
some tests which are failing...)

This PR addresses it
2019-10-25 17:33:11 +08:00
Hang Yan 06468b2f63 Update dep for compose 3.5+ (#1120)
* Update vendor packages

* Support compose 3.5+ versions
2019-03-26 11:44:26 -04:00
Kamil Kieliszczyk 66ac4aff4f Add kompose.image-pull-secret and kompose.image-pull-policy (#1091)
* Add kompose.image-pull-secret

* Add kompose.image-pull-secret tests

* Add kompose.image-pull-policy

* Add kompose.image-pull-policy tests

* ignore .coverprofile

* Fix typo
2019-02-07 09:50:53 -05:00
huikaihoo 40c1b8cf87 Support multiple hostnames on expose label in service for Kubernetes (#1092)
* Support multiple hostnames on label (kompose.service.expose) separated by semicolon (;)

* Multiple hostnames on expose label separated by comma; Ignore leading / trailing spaces and repeated commas; Updated test cases and documents.
2019-01-31 09:34:04 -05:00
huikaihoo d48ae64325 Add label support to named volumes in docker compose v3 to Kubernetes (#1083)
* Support read specific label (kompose.volume.size) from named volume and apply to kubernetes supported volume size

* Fix the PVC size in log message when deploy Kubernetes

* Skip creation of PersistentVolumeClaim if it is already created in the same kubernetes deploy

* Add selector to PersistentVolumeClaim only when specific label (kompose.volume.selector) is used in named volume

* Add test case to named-volume for the new labels
2018-11-29 12:07:17 -05:00
Hang Yan a012fba1c2 Support read data from stdin 2018-08-09 22:46:41 +08:00
Xianlu Bird 0252213efb Add support for Config, endpoint_mode and 3.3 support (#994)
* Add support for Config

* Add deployment endpoint_mode support

* Add docker compose 3.3 support

* Add compose v3.3 support for openshift
2018-08-01 15:09:00 -04:00
Hang Yan c0360e066b Merge pull request #1020 from hangyan/fix/env-file-env
Fix environment with env_file bug
2018-07-10 13:58:59 +08:00
Hang Yan 3b04a9178a Fix environment with env_file bug 2018-07-10 13:15:36 +08:00
Hang Yan 5a374742cf Merge pull request #871 from surajnarwade/stdin
Kompose will read input from stdin
2018-06-06 22:20:27 +08:00
AdamDang a869b72876 Typo fix in tests.sh: kubernets->kubernetes
kubernets->kubernetes
2018-05-25 13:06:24 +08:00
xianlubird a4efdd6cca Add label 'kompose.controller.type' set service convert controller type 2018-05-12 11:52:23 +08:00
xianlubird 84b419c7ef Support compose global deploy mode to daemonset 2018-05-07 15:19:47 +08:00
xianlubird 04e9ee9949 Fix missing attribute when convert with multiple docker-compose files
Signed-off-by: xianlubird <xianlubird@gmail.com>
2018-05-03 11:51:55 +08:00
Hang Yan f3412a7399 Add headless service type label
Also remove the relation between restart and service create
2018-04-15 00:23:48 +08:00
Hang Yan 88b8e316b9 Support hostname and domainname 2018-03-31 12:00:37 +08:00
Charlie Drage b5cc556308 Merge pull request #956 from hangyan/refactor-test-cmd
Refactor tests script to uses vars
2018-03-21 08:49:10 -04:00
Charlie Drage 442caa4359 Merge pull request #957 from hangyan/support-hostpath-volume
Support hostpath volume
2018-03-19 11:47:00 -04:00
Hang Yan cf833c8818 Support hostpath volume 2018-03-16 10:40:25 +08:00
Hang Yan 6e5b6a3055 Fix deploy resources parse error 2018-03-15 14:00:17 +08:00
Hang Yan 5f38cc723e Refactor tests script to uses vars 2018-03-09 11:21:43 +08:00
Charlie Drage a5a113d042 Merge pull request #950 from hangyan/support-old-restart-policy
Support old restart policy in compose v3
2018-03-07 08:41:46 -05:00
Suraj Narwade 6d4c8f9b78 Kompose will read input from stdin
Resolves issue #870

for example,

```
$ cat docker-compose.yaml | kompose convert -f -
INFO Kubernetes file "frontend-service.yaml" created
INFO Kubernetes file "redis-master-service.yaml" created
INFO Kubernetes file "redis-slave-service.yaml" created
INFO Kubernetes file "frontend-deployment.yaml" created
INFO Kubernetes file "redis-master-deployment.yaml" created
INFO Kubernetes file "redis-slave-deployment.yaml" created
```

Added integration test for the same.
`
2018-03-07 12:49:21 +05:30
Suraj Narwade 908e3f1b59 Merge pull request #907 from caglar10ur/serviceports
Allow services to use same port with different protocols
2018-03-07 12:29:05 +05:30
Hang Yan 723bd0f9d8 Support old restart policy in compose v3 2018-03-07 13:35:36 +08:00
Charlie Drage b365953266 Merge pull request #938 from hangyan/fix-helm-custom-dir
Fix custom output and charts conflict error
2018-02-27 10:07:39 -05:00
Hang Yan 0f3d368215 Fix cli custom output and charts conflict error 2018-02-27 16:10:35 +08:00
Hang Yan b8f1707d30 Fix healthcheck parser nil pointer error 2018-02-09 11:10:03 +08:00
Charlie Drage f857afad1c Merge pull request #929 from hangyan/fix-v2compose-pvc-size-error
Fix custom pvc size in v2 compose not working error
2018-02-08 08:24:49 -05:00
Hang Yan f18450d045 Fix custom pvc size in v2 compose not working error 2018-02-08 16:13:49 +08:00
Hang Yan 0ef015d3da Fix unset env bug for v3 compose 2018-02-08 15:12:16 +08:00
S.Çağlar Onur e6ae470830 Allow services to use same port with different protocols
kompose fails if compose file declares different protocols for the same port. eg;

...
     ports:
      - 666:666/udp
      - 666:666/tcp
...

This PR adds the port to the output and also makes sure that names are unique for each port/protocol pair.
This is supported with LoadBalancer (kubernetes/kubernetes#2995) so trying to use this config with LB panics.
2018-01-17 11:26:03 -08:00
Oliver Bristow 35a782024d Add kompose.service.expose.tls-secret 2017-12-18 15:56:38 +00:00
Suraj Narwade ada8af2410 Added functional test 2017-11-30 11:14:44 +05:30
Charlie Drage f4bfe1fcb5 Add env_file + ConfigMaps feature to Kompose
When using env_file with Docker Compose, a ConfigMap will be generated

For example:

```sh
▶ ./kompose convert -f
script/test/fixtures/configmaps/docker-compose.yml
INFO Kubernetes file "redis-service.yaml" created
INFO Kubernetes file "redis-deployment.yaml" created
INFO Kubernetes file "foo-env-configmap.yaml" created
INFO Kubernetes file "bar-env-configmap.yaml" created
```

File:

```yaml
version: '3'

services:
  redis:
    image: 'bitnami/redis:latest'
    environment:
      - ALLOW_EMPTY_PASSWORD=no
    # Env file will override environment / warn!
    env_file:
      - "foo.env"
      - bar.env
    labels:
      kompose.service.type: nodeport
    ports:
      - '6379:6379'
```

To:

```yaml
apiVersion: v1
data:
  ALLOW_EMPTY_PASSWORD: "yes"
kind: ConfigMap
metadata:
  creationTimestamp: null
  name: foo-env
```

```yaml
...
      - env:
        - name: ALLOW_EMPTY_PASSWORD
          valueFrom:
            configMapKeyRef:
              key: ALLOW_EMPTY_PASSWORD
              name: foo-env
```
2017-10-10 12:40:49 -04:00
Suraj Narwade 35198cca12 Added feature for placement key in v3
it will map `engine.labels.operatingsystem` to `beta.kubernetes.io/os` and
`node.hostname` to `kubernetes.io/hostname` and all other constraints will not be supported.
2017-10-06 12:22:14 +05:30
Suraj Narwade 4f8babd623 Added --controller feature
Previously we used to mention controller type as `--deployment`,
`--replication-controller` or `--daemonset` as argument.
But now,
it will be like,

ex.

```
kompose convert --controller=daemonset
```
2017-10-04 12:43:45 +05:30
Charlie Drage 35166b8871 Merge pull request #816 from surajnarwade/tmpfsfix
Fixed tmpfs with mode failure
2017-09-26 15:24:35 -04:00
Suraj Narwade 269f604094 Fixed --volumes validation
Now, `--volumes` argument will validate it's input, it will only allow
`persistentVolumeClaim` or `emptyDir`, otherwise it will throw an error.
2017-09-25 17:25:57 +05:30
Suraj Narwade 8a19c47b1a Fixed tmpfs with mode failure
Fixes #807
now kompose will ignore mode of tmpfs and will pass only mount path.
2017-09-25 14:44:03 +05:30
Charlie Drage 8fddec9e74 Merge pull request #787 from cdrage/refactor-flags
Add --volumes parameter, deprecate emptyvols
2017-09-08 13:08:05 -04:00
Charlie Drage cc1671aaa9 Add --volumes parameter, deprecate emptyvols
This adds the --volumes paramater with a "generate" and "empty"

By default, "generate" will be used as a place-holder for "true".
Although not used in the code, we will eventually add "none"

This uses CLI paramater naming processes (no emptyVols as that is Go /
Kubernetes specific) and thus we use dashes.
2017-09-05 11:39:57 -04:00