* change master to main in scripts and docs
Changes the naming from master to main in the scripts and documentation.
Do not merge unless CI passes!
Signed-off-by: Charlie Drage <charlie@charliedrage.com>
* remove 1.18, specify version of staticcheck
---------
Signed-off-by: Charlie Drage <charlie@charliedrage.com>
* 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.
* Cleanup mentions about glide
* Don't use glide to ignore vendor directory
Since go-1.9, "./..." no longer contains the "vendor" directory.
Also, since #1305 migrated dependency management from glide to go mod,
there is no need to think about the "vendor" directory.
See: https://golang.org/doc/go1.9#vendor-dotdotdot
* go mod tidy
* 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
For some reason, Kubernetes tests haven't been running correctly. This
(hopefully) fixes it on Semaphore..
Signed-off-by: Charlie Drage <charlie@charliedrage.com>
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.
`
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.
This adds cluster tests for "kompose up" and "kompose down" for
Kubernetes. At the moment this checks that they are deployable to a
single-node Kubernetes cluster.
More proficient tests such as testing if the pods are actually up will
be added in the future.
You can test this by running: `make test-ci` on your local-machine.
Furthermore, we'll eventually have this enabled on Fabric8 / CentOS CI /
Semaphore (whatever comes first) so we can have a full end-to-end
testing environment.
* 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'
This clears up .travis.yaml as well as adds the test dependencies when
running `make test` so the user running the tests has the most
up-to-date ones available.