Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Remove outdated README content from when CAPBK was own repo #1634

Merged
merged 1 commit into from
Oct 23, 2019
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
79 changes: 1 addition & 78 deletions bootstrap/kubeadm/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,52 +13,8 @@ for kubernetes bootstrap.
* [cluster-api.sigs.k8s.io](https://cluster-api.sigs.k8s.io)
* [The Kubebuilder Book](https://book.kubebuilder.io)

## How to build, deploy and test CABPK
CABPK is built using kubebuilder. Please refer to the [The Kubebuilder Book](https://book.kubebuilder.io) for build and deploy in a cluster.

CABPK is only part of a whole and does not function in isolation. It requires coordination
with the core provider, Cluster API (CAPI), and an infrastructure provider; see the [CAEP](https://github.com/kubernetes-sigs/cluster-api/blob/master/docs/proposals/20190610-machine-states-preboot-bootstrapping.md)
document for more information. For the remainder of this document we will be referring to
[cluster-api-provider-docker](https://github.com/kubernetes-sigs/cluster-api-provider-docker)
(CAPD) as our infrastructure provider.

A convenient way to set up infrastructure for testing is to use [kind](https://kind.sigs.k8s.io/)
as the platform cluster to install the controllers and CRDs into. Then use a tool like
[tilt](https://tilt.dev/) or [skaffold](ttps://skaffold.dev/) to manage your dev environment.
A minimal example of a Tiltfile looks like this:

```
allow_k8s_contexts('kubernetes-admin@kubernetes')

controllers = {
'capi': {
'path': '../cluster-api',
'image': 'gcr.io/k8s-staging-cluster-api/cluster-api-controller:dev',
},
'cabpk': {
'path': './',
'image': 'gcr.io/k8s-staging-cluster-api/cluster-api-bootstrap-provider-kubeadm:dev',
},
'capd': {
'path': '../cluster-api-provider-docker',
'image': 'gcr.io/k8s-staging-cluster-api/cluster-api-provider-docker:dev',
},
}

for name, controller in controllers.items():
command = '''sed -i'' -e 's@image: .*@image: '"{}"'@' ./{}/config/default/manager_image_patch.yaml'''.format(controller['image'], controller['path'])
local(command)

k8s_yaml(local('kustomize build ' + controller['path'] + '/config/default'))

docker_build(controller['image'], controller['path'])

```

See [capi-dev](https://github.com/chuckha/capi-dev) for an example of a more complex developemt environment using [tilt](https://tilt.dev/).

## How does CABPK work?
Once your test environment is in place, create a `Cluster` object and its corresponding `DockerCluster`
CABPK is integrated into `cluster-api-manager`. Assuming you've set of CAPI and the Docker Manager, create a `Cluster` object and its corresponding `DockerCluster`
infrastructure object.

```yaml
Expand Down Expand Up @@ -224,36 +180,3 @@ The `KubeadmConfig` object supports customizing the content of the config-data:
- `KubeadmConfig.PostKubeadmCommands` same as above, but after `kubeadm init/join`
- `KubeadmConfig.Users` specifies a list of users to be created on the machine
- `KubeadmConfig.NTP` specifies NPT settings for the machine

## Versioning, Maintenance, and Compatibility

- We follow [Semantic Versioning (semver)](https://semver.org/).
- Cluster API bootstrap provider kubeadm versioning is syncronized with
[Cluster API](https://github.com/kubernetes-sigs/cluster-api/blob/master/README.md).
- The _master_ branch is where development happens, this might include breaking changes.
- The _release-X_ branches contain stable, backward compatible code. A new _release-X_ branch
is created at every major (X) release.

## Get involved!

* Join the [Cluster API discuss forum](https://discuss.kubernetes.io/c/contributors/cluster-api).

* Join the [sig-cluster-lifecycle](https://groups.google.com/forum/#!forum/kubernetes-sig-cluster-lifecycle)
Google Group for access to documents and calendars.

* Join our Cluster API working group sessions
* Weekly on Wednesdays @ 10:00 PT on [Zoom][zoomMeeting]
* Previous meetings: \[ [notes][notes] | [recordings][recordings] \]

* Provider implementer office hours
* Weekly on Tuesdays @ 12:00 PT ([Zoom][providerZoomMeetingTues]) and Wednesdays @ 15:00 CET ([Zoom][providerZoomMeetingWed])
* Previous meetings: \[ [notes][implementerNotes] \]

* Chat with us on [Slack](http://slack.k8s.io/): #cluster-api

[notes]: https://docs.google.com/document/d/1Ys-DOR5UsgbMEeciuG0HOgDQc8kZsaWIWJeKJ1-UfbY/edit
[recordings]: https://www.youtube.com/playlist?list=PL69nYSiGNLP29D0nYgAGWt1ZFqS9Z7lw4
[zoomMeeting]: https://zoom.us/j/861487554
[implementerNotes]: https://docs.google.com/document/d/1IZ2-AZhe4r3CYiJuttyciS7bGZTTx4iMppcA8_Pr3xE/edit
[providerZoomMeetingTues]: https://zoom.us/j/140808484
[providerZoomMeetingWed]: https://zoom.us/j/424743530