Commit Graph
106 Commits
Author SHA1 Message Date
AhmedGrati 8f0a6684ca Feat support security fsgroup (#1613)
* feat: support security context fsgroup

Signed-off-by: AhmedGrati <ahmedgrati1999@gmail.com>

* test: add unit test to security group fsgroup

Signed-off-by: AhmedGrati <ahmedgrati1999@gmail.com>

* test: add functional test to security group fsgroup

Signed-off-by: AhmedGrati <ahmedgrati1999@gmail.com>

* docs: add documentation of the new label of security group fsgroup

Signed-off-by: AhmedGrati <ahmedgrati1999@gmail.com>

---------

Signed-off-by: AhmedGrati <ahmedgrati1999@gmail.com>
2023-04-05 14:11:10 -04:00
Manuel Rüger b3d4aec3ee k8sutils: Update helm template to use apiVersion v2 (#1567)
https://helm.sh/docs/topics/charts/#the-apiversion-field
2023-02-01 10:37:57 -05:00
Lctrs cb41c16bf4 chore: require go >=1.18, bump deps and get rid of replace directives (#1552) 2023-01-13 08:50:28 -05:00
Lctrs 2ad5745d58 feat: migrate from libcompose to compose-go (#1547)
* feat: migrate from libcompose to compose-go

libcompose has been deprecated since summer 2021 in favor of https://github.com/compose-spec/compose-go.
Kompose should now be able to load all versions of compose.

* chore: replace golint with staticcheck

golint has been deprecated. Recommended replacement is staticcheck.
2023-01-12 15:17:22 -05:00
AhmedGrati 91391eb84f Fix: Make the out flag print to one file using seperator (#1541)
* fix: make the out flag print to one file using seperator

* fix: comment an unused function

* fix: update test script

* fix: update output k8s

* fix: update the json output error condition

* fix: update envvars interpolation tests

* chore: update e2e tests to support yaml generation instead of JSON format

* fix: update e2e tests according to ci environment

* fix: apply PR changes
2022-12-01 09:47:50 +01:00
AhmedGrati acb8046f84 Fix environment variables interpolation (#1524) 2022-11-19 10:35:33 +08:00
AhmedGrati fd7b751564 Fix container name (#1528)
* fix: update get container name function
* test: add a test for the introduced fix
2022-11-13 21:33:47 +08:00
AhmedGrati 6512dd3dd4 fix: change the port ID definition in kubernetes.go file (#1515) 2022-08-16 07:57:43 -04:00
ichx 8cb1b0599e Add support for placement preferences docker-compose v3.3+ (#1425) 2021-11-04 08:28:45 +08:00
Shivam Sandbhor c921643705 Add support for statefulset controller. (#1452)
Signed-off-by: Shivam Sandbhor <shivam.sandbhor@gmail.com>
2021-11-04 08:24:12 +08:00
ichx d55071e9d6 Support tcp/http liveness/readiness probe (#1449) 2021-11-03 23:30:38 +08:00
Hang Yan 72ea6a3c24 Support group service by shared volumes (#1439)
Signed-off-by: Hang Yan <hang.yan@hotmail.com>
2021-10-03 23:07:41 +08:00
Hang Yan 5d7ed192a4 Code Refactor (#1438)
* Code refactor
Signed-off-by: Hang Yan <hang.yan@hotmail.com>
2021-10-03 17:33:43 +08:00
ichx e82fe96c38 Add support for negated placement constraint (#1419) 2021-08-27 22:49:55 +08:00
tk42 f7f987de49 Add ServiceAccountName
The label `kompose.service.accountname` defines the service account name
to provide the credential info of the pod.
2021-07-24 08:44:07 +09:00
tk42 deb00f3407 support multiple containers in a pod (#1394) 2021-07-08 09:48:05 +08:00
james song 0b331d9e5d Fixed, #1385 (#1386)
Add support for more readiness args
2021-05-19 23:52:33 +08:00
Hang Yan fb3b2257c6 Fix secret name error (#1379)
* Fix secret name error
2021-05-01 11:31:05 +08:00
Rémy Léone 395d99fb7d add support for golangci-lint (#1373) 2021-04-07 11:10:56 +08:00
Rémy Léone d1e538e2d4 fix goimports (#1372) 2021-04-03 11:50:28 +08:00
João Vitor Paes de Barros do Carmo 0036f0c32b Add readiness healthcheck generation by label (#1366) 2021-03-17 18:02:50 +08:00
namusyaka 25036e1b22 Create directories if --out ends with "/" or includes nonexistent directories (#1350)
* Create directory if --out ends with "/"

* Create directories if "out" contains nonexistent directories
2020-11-08 23:18:39 +08:00
Hang Yan c0f485b4e1 Create two svc if loadbalancer and use udp/tcp the same time 2020-11-03 13:09:25 +08:00
Hang Yan 525b68f027 Go mod (#1305)
* Use go mod instead of glide
* Add `--with-kompose-annotation` flag to allow us to switch it off for tests
* Remove hostpid support (since the newest sdk does not support it)
* Create new test script and fixtures
* Remove replicationcontroller support
2020-08-07 17:25:52 +08:00
Hang Yan dc6975223a Remove networkpolicy dup (#1302) 2020-08-06 17:27:36 +08:00
Hang Yan 7dbca5df34 Fix some ci lint (#1233) 2020-01-05 21:36:32 +08:00
Hang Yan fe4301192a Refactor code and fix build (#1228) 2020-01-04 17:17:14 +08:00
Hang Yan 88a3a27ca8 Support export yaml with indent (#1219) 2019-12-28 12:23:03 +08:00
Hang Yan 34b827c97e Support use configmap as volume (#1216) 2019-12-28 01:02:27 +08:00
Hang Yan bc28ffc675 Upgrade deployment/daemonset to apps/v1 (#1207) 2019-12-26 16:36:11 +08:00
Hang Yan 73ec0abab2 Remove duplicate of configmap (#1206)
* also change the name of the generated cm
2019-12-26 08:53:41 +08:00
Hang Yan 4cbe106351 Fix chart lint (#1205) 2019-12-25 00:13:31 -10:00
Chander G 356c64890c fix tests related to secrets (#1198)
1. fix the path used to read secret data
without this fix, the path to the compose file is added to the already
absolute path, hence readFile was unable to find the secrets file

2. fix the expected json format
mountPath includes the entire path including the name of the secret
2019-12-04 10:32:29 +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
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 e74c12e452 Fix container_name set error 2019-06-19 23:31:03 +08: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
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 852078cc5c Remove incorrect logging about headless service (#991) 2018-04-26 15:11:24 -04: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
Hang Yan 505cb8b754 Fix golint warnings 2018-03-25 16:22:08 +08:00
Hang Yan 723bd0f9d8 Support old restart policy in compose v3 2018-03-07 13:35:36 +08:00
Hang Yan 0f3d368215 Fix cli custom output and charts conflict error 2018-02-27 16:10:35 +08:00
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 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 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
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