Commit Graph
545 Commits
Author SHA1 Message Date
Charlie Drage bccc56373c Merge pull request #937 from hangyan/fix-code-style
Variable name should not be the same as imported package name
2018-02-23 10:30:53 -05:00
Charlie Drage 170acd9e1a Merge pull request #936 from hangyan/fix-healthcheck-bug
Fix healthcheck parser nil pointer error
2018-02-20 11:00:18 -05:00
Charlie Drage 00ac427d30 1.9.0 Release 2018-02-13 16:00:16 -05:00
Charlie Drage e8e32c137f Merge pull request #933 from hangyan/refactor-const-strings
Refactor package app to use const rather than raw string
2018-02-13 09:27:07 -05:00
Hang Yan 94148d2e56 Variable name should not be the same as imported package name 2018-02-09 11:31:32 +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 1df73c4004 Refactor package app to use const rather than raw string 2018-02-08 19:43:57 +08: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
Charlie Drage ed9246d537 Merge pull request #931 from hangyan/fix-typo-in-func-name
Fix typo in function name
2018-02-07 08:22:50 -05:00
Hang Yan be96662d11 Fix log format error 2018-02-07 13:42:06 +08:00
Hang Yan 3fe1b5313c Fix typo in function name 2018-02-07 11:22:29 +08:00
Hang Yan 2b135cfe58 Remove unneeded TODO comment 2018-02-07 00:04:57 +08:00
coodix 60f1e5757d Push image without authentication 2018-01-26 10:52:21 +03:00
Charlie Drage 48c0ab55e9 1.8.0 Release 2018-01-24 10:51:50 -05: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
Charlie Drage 60402237b5 1.7.0 Release 2018-01-04 12:09:19 -05:00
Charlie Drage 9bbab876cb Merge pull request #895 from Code0x58/893-fix-image-push
Fix pushing of image to a private repository
2018-01-04 09:11:59 -05:00
Oliver Bristow 4912f54393 Fix pushing image to registry #893 2017-12-26 22:51:42 +00:00
Piyush Garg 52f8f1f2b4 Added Case for Config Map in kompose down.
To implement this, added label in
configmap object at the time of init

Fixed ConfigMap test because we are
adding one more field labels in metadata
2017-12-22 15:44:10 +05:30
Oliver Bristow 35a782024d Add kompose.service.expose.tls-secret 2017-12-18 15:56:38 +00:00
Charlie Drage 01c4f7beb2 1.6.0 Release 2017-12-11 13:50:50 -05:00
Suraj Narwade 286fbd1203 Fixed kompose build failure
While `local` build, kompose was not recognizing `dockerfile` key
Hence it was breaking the build as mentioned in issue #832.
This PR will fix the issue.
2017-12-01 11:15:03 +05:30
Charlie Drage 84be7400a2 Merge pull request #846 from surajnarwade/buildv3
Added support for build key in v3
2017-11-30 09:06:32 -05:00
Suraj Narwade 126d9820c4 Adding --controller flag in up & down
To make `kompose up` & `kompose convert` equal in feature, This PR will
add `--controller` flag for `kompose up` as well as `kompose down`
so that user experience will be the same for `up` & `convert`
Resolves #798

since we are adding `--controller` to `up` and `down`, So respective code to deploy and undeploy also being added for `daemonset` and `replicationcontroller`

Added tests for `--controller`
2017-11-27 15:26:24 +05:30
Suraj Narwade 5de4aa85f8 Added sirupsen and updated all occurances
Updated `sirupsen`, `docker/cli`, `docker/libcompose` in `glide`,
Also changed `Sirupsen` with `sirupsen` in all kompose packages as well as in
`docker/distribution` packages
2017-11-27 12:28:46 +05:30
Charlie Drage a2575df355 1.5.0 Release 2017-11-21 11:22:21 -05:00
Charlie Drage a567cfff4a Merge pull request #864 from cdrage/update-versions
Move version information to separate file
2017-11-21 07:40:56 -05:00
Anatoli Babenia 1975c32740 Set service volume size with kompose.volume.size label (#235)
1. Copy labels from compose to kobject
2. If kompose.volume.size is set on service level, use it

Internal API changes:

- Add PVCSize to kobject Volumes struct
- Pass default volume size as CreatePVC() param
2017-11-12 13:05:55 +03:00
xianlubird 9b66188144 Ignore links attribute and print warning message
Signed-off-by: xianlubird@gmail.com
2017-11-08 10:08:12 +08:00
Charlie Drage 0f4bfebf08 Move version information to separate file
Moves the version information to a seperate file. This is mostly due to
import cycle errors occuring when using "import
github.com/kubernetes/kompose/cmd" in order to get the global variable
of VERSION and GITCOMMIT.

Update's the Makefile and other files accordingly.

If the version and commmit is unretriveable due to not being able to
find the kompose binary, the one from pkg/version/version.go will be
used.
2017-11-07 15:28:04 -05:00
Suraj Narwade c7d6bc63d9 Added support for build key in v3
Resolves #636

This PR will add support for `build` in docker compose v3.
As https://github.com/docker/cli/pull/481 got merged now
2017-10-25 14:38:08 +05:30
Charlie Drage 28601fa6ea Update vendoring 2017-10-10 12:55:57 -04:00
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
Li Yi fa5281d440 Fix the cpu limits and requests in generated deployment file
Signed-off-by: Li Yi <denverdino@gmail.com>
2017-10-09 19:22:31 +08:00
Li Yi 865373ef6c Fix the cpu limits and requests in generated deployment file
Signed-off-by: Li Yi <denverdino@gmail.com>
2017-10-09 16:57:57 +08: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
Charlie Drage 2e99b8fd3a Adds healthcheck
This PR adds support for HealthCheck, being able to supply, for example:

```yaml
version: "3"

services:
  redis:
    image: redis
    healthcheck:
      test: echo "hello world"
      interval: 10s
      timeout: 1s
      retries: 5
```

Which is then converted to:

```yaml
spec:
  containers:
  - image: redis
    livenessProbe:
      exec:
        command:
        - echo "hello world"
      failureThreshold: 5
      periodSeconds: 10
      timeoutSeconds: 1
    name: redis
    resources: {}
  restartPolicy: Always
```

At the moment, this only supports livenessProbe, with support for readinessProbe in the future.
2017-08-25 10:02:51 -04:00
Charlie Drage bd6d493cef Add deploy: mode: global support
Adds support for deploy: mode.

For example:

```yaml
version: "3"

services:
  foo:
    deploy:
      resources:
        mode: global
        replicas: 6
    image: redis
```

Will only generate replicas: 1 in Kubernetes pods as "global" limits
replicas to only one.
2017-08-23 12:47:27 -04:00
Suraj Narwade ec5c4d8550 Adding save command to annotation
This command will add `kompose command` used to generate artifacts as well as `kompose version`,
for ex,

```
metadata:
    annotations:
      kompose.cmd: kompose convert -f /home/snarwade --stdout
      kompose.version: 1.0.0 (HEAD)
```

For functional test, Now each test has template like,

```
 "annotations": {
           "kompose.cmd": "%CMD%",
           "kompose.version": "%VERSION%"
```

Because, for every machine these values will be different.

Updated functional test with new annotations
2017-08-14 12:22:33 +05:30
Suraj Deshmukh 8126841788 Merge pull request #651 from procrypt/git
move git and related functions from openshift.go into a separate file
2017-08-12 12:19:53 +05:30
Abhishek 683db1230d move git and related functions from openshift. go into a separate file 2017-08-11 15:19:06 +05:30
Suraj Narwade 641f8f8932 Added support for group_add key
This PR will add support for `group_add` key which will map to
supplemental group in pod security context.
2017-08-10 11:54:35 +05:30