* Two new scripts testing kompose-specific labels have been added:
script/test_in_openshift/tests/routes-service-expose-hostname.sh
script/test_in_openshift/tests/routes-service-expose-true.sh
* Tests for buildconfig dockerfile construct has been added:
script/test_in_openshift/tests/buildconfig_dockerfile.sh
* Tests for restart option:
script/test_in_openshift/tests/restart-options.sh
* Ability to run individual scripts: Changes have been made to script/test_in_openshift/run.sh
for running individual scripts:
Eg. ./script/test_in_openshift/run.sh script/test_in_openshift/tests/routes-service-expose-true.sh
Adds the provider name to the file output. For example:
```sh
INFO OpenShift file "frontend-service.yaml" created
INFO OpenShift file "redis-master-service.yaml" created
INFO OpenShift file "redis-slave-service.yaml" created
INFO OpenShift file "frontend-deploymentconfig.yaml" created
INFO OpenShift file "frontend-imagestream.yaml" created
INFO OpenShift file "redis-master-deploymentconfig.yaml" created
INFO OpenShift file "redis-master-imagestream.yaml" created
INFO OpenShift file "redis-slave-deploymentconfig.yaml" created
INFO OpenShift file "redis-slave-imagestream.yaml" created
```
For services with build and image keys DeploymentConfig respects tag from docker-compose image key.
But BuildConfig image tag was always set to 'latest'.
Result of this was that deployment wasn't trigired after successful build.
This fixes it by setting BuildConfig output image tag to the same tag that is used for DeploymentConfig (tag from docker-compose image key)
Updates Kompose completion with neutral language (using shell instead of
bash).
Fixes the indentation issues when outputting `kompose completion --help`
Kubernetes container names must match the regex [a-z0-9]([-a-z0-9]*[a-z0-9])?
This excludes underscores, which is common in container names in compose.
now args provided under build in docker-compose file can be available in buildconfig.
it solves #406
Added unit test and functional test
solves #445
Separated key:"value" pairs by spaces
`k8s.io/kubernetes/pkg/api` is imported directly and once with the alias
import name `kapi` so remove the original import and keep the aliased with
`kapi` one and also replace the code bits which call it with `api` name.
It resolves issues #474 and #589 which were coming from libcompose,
as well as resolves#440 and #437 partially as `group_add` & `stop_grace_period`
are supported by libcompose now.
Resolves#576
This PR includes `output-os-template.json` in `nginx-node-redis` example,
which is basically output template contains `%URI%` and `%REF%` variables
which will be filled while initializing test cases and new will be stored as
`/tmp/output-os.json`
This will remove the problem of git uri and ref.
* This PR adds functional tests for kompose up/down. The test scripts
are hosted under script/test_in_openshift. The directory structure,
as follows:
script/test_in_openshift/
├── compose-files
│ └── docker-compose-command.yml
├── lib.sh
├── run.sh
└── tests
├── buildconfig.sh
├── entrypoint-command.sh
├── etherpad.sh
└── redis-replica-2.sh
* script/test_in_openshift/run.sh is the master script
which executes all the tests
* script/test_in_openshift/lib.sh consists of helper functions
for `kompose up` and `kompose down` checks
* script/test_in_openshift/tests directory consists of test scripts
* The scripts use 'oc cluster up' for setting up a single-machine
OpenShift cluster. It exits if oc binaries are not installed
* Most of the docker compose files used are the ones already
available in examples/ or script/test/fixtures.
* How to run the tests: 'make test-openshift'
Removes the '$CLI' portion of uploading the binaries / tarballs. Had a
naming error when uploading.
Updates it so we cd to `bin` so we can create the tarballs without the
`/bin` folder being located within it.
Updates the release script to use the actual GOPATH directory as
previous problems with commit hashes / versions in `kompose version`.
Cleans this up in regards to all the `cd` and `cd ..` commands.
No need to `git clone`.
This commit Add support for cap_add & cap_drop which maps to
Pod.Spec.Container.SecurityContext.Capabilities.Add/Drop
Added unit tests for ConfigCapabilities function
Updated conversion.md on support for these keys
fixes#445
This PR was partially fixed by docker/libcompose#450, which now gives consistent build context,
also it modifies the function getAbsBuildContext to create accurate build context, Unit test are being modified
according to new structure.
If we have a docker-file with root level volumes and we do a kompose up
using that docker-file, libcompose will add an additional _ followed by
the current directory name. Since kubernetes doesn't allow _ in the
objects created so kompose up will fail to deploy it. As a solution we
replace _ to - and we can then deploy it successfully.