Skip to content

Commit ec3d067

Browse files
authoredApr 9, 2020
Update README.md
1 parent b82c335 commit ec3d067

File tree

1 file changed

+17
-24
lines changed

1 file changed

+17
-24
lines changed
 

‎README.md

+17-24
Original file line numberDiff line numberDiff line change
@@ -56,31 +56,15 @@ kubectl --namespace kube-system expose deployment gitkubed --type=LoadBalancer -
5656
gitkube install
5757
```
5858

59-
#### Example
60-
Follow this [example](https://github.com/hasura/gitkube-example) repo for a typical workflow of gitkube.
61-
62-
63-
## How it works
64-
65-
Gitkube has three components:
66-
67-
1. Remote: Custom resource defined by a K8s CRD
68-
2. gitkube-controller: Controller that manages Remote objects and propogates changes to gitkubed
69-
3. gitkubed: Git host that builds docker image from the repo and rolls out deployment
70-
71-
### High-level architecture
72-
73-
![Architecture](https://raw.githubusercontent.com/hasura/gitkube/master/artifacts/gitkube-v0.1.png)
74-
75-
### Workflow
59+
## Workflow
7660
- Local dev: User creates a base git repo for the application with Dockerfile and K8s deployment
7761
- Setting Remote: User defines a spec for Remote containing the rules for `git push`
7862
- Deploying application: Once a Remote is setup, application can be deployed to K8s using `git push <remote> master`
7963

80-
#### Local dev
64+
### Local dev
8165
User should have a git repo with source code and a Dockerfile. User should also create a base K8s deployment for the application.
8266

83-
#### Setting Remote
67+
### Setting Remote
8468
A Remote resource consists of 3 parts:
8569

8670
1. authorizedKeys: List of ssh-keys for authorizing `git push`.
@@ -115,7 +99,7 @@ spec:
11599
dockerfile: example/www/Dockerfile # Location of Dockerfile for the source code
116100
```
117101
118-
#### Deploying application
102+
### Deploying application
119103
120104
Once a Remote is created, it gets a git remote URL which you can find in its `status` spec
121105

@@ -139,12 +123,21 @@ And finally, `git push`
139123
$ git push sampleremote master
140124
```
141125

142-
## Roadmap
126+
### More examples
127+
Follow this [example](https://github.com/hasura/gitkube-example) repo for more workflows with gitkube.
128+
129+
## How it works
130+
131+
Gitkube has three components:
132+
133+
1. Remote: Custom resource defined by a K8s CRD
134+
2. gitkube-controller: Controller that manages Remote objects and propogates changes to gitkubed
135+
3. gitkubed: Git host that builds docker image from the repo and rolls out deployment
143136

144-
Gitkube is open to evolution. Some of the features to be added in future include:
137+
### High-level architecture
138+
139+
![Architecture](https://raw.githubusercontent.com/hasura/gitkube/master/artifacts/gitkube-v0.1.png)
145140

146-
- Allowing all apps (daemonset, statefulset) to be deployed using `git push`. Current support is limited to deployments. [#19](https://github.com/hasura/gitkube/issues/19)
147-
- Allowing different git hooks to be integrated [#20](https://github.com/hasura/gitkube/issues/20)
148141

149142
## Contributing
150143

0 commit comments

Comments
 (0)