layout | permalink | title | redirect_from | ||
---|---|---|---|---|---|
default |
/development/ |
Development |
|
Read about building kompose here.
- Go to https://github.com/kubernetes/kompose
- Click the "Fork" button (at the top right)
The commands below require that you have $GOPATH
. We highly recommended you put the Kompose code into your $GOPATH
.
git clone https://github.com/$YOUR_GITHUB_USERNAME/kompose.git $GOPATH/src/github.com/kubernetes/kompose
cd $GOPATH/src/github.com/kubernetes/kompose
git remote add upstream 'https://github.com/kubernetes/kompose'
git checkout -b myfeature
# Make your code changes
git fetch upstream
git rebase upstream/main
Note: If you have write access to the main repository at github.com/kubernetes/kompose, you should modify your git configuration so that you can't accidentally push to upstream:
git remote set-url --push upstream no_push
git commit
git push -f origin myfeature
- Visit https://github.com/$YOUR_GITHUB_USERNAME/kompose.git
- Click the "Compare and pull request" button next to your "myfeature" branch.
- Check out the pull request process for more details
Kompose uses Go Modules to manage dependencies.
If you want to introduce changes to dependencies, please ensure that go.mod
and go.sum
are updated properly.
Kubernetes version depends on what version is OpenShift using.
OpenShift is using forked Kubernetes to carry some patches.
Currently, it is not possible to use a different Kubernetes version from the version that OpenShift uses.
(for more see comments in go.mod
)
Kompose CLI tests run kompose convert
with docker-compose files, and cross-check the k8s and OpenShift artifacts generated with the template files.
To generate CLI tests, please run make gen-cmd
.
For Kompose, we use numerous CI's:
- TravisCI: Unit and CLI tests
- SemaphoreCI: Integration / cluster tests
- Fabric8CI: Secondary integration tests / future cluster tests