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

Get a working build for the etcd operator #1

Draft
wants to merge 42 commits into
base: master
Choose a base branch
from
Draft
Show file tree
Hide file tree
Changes from 29 commits
Commits
Show all changes
42 commits
Select commit Hold shift + click to select a range
18d23b8
Switch to go modules
neoaggelos Feb 25, 2022
ffa5241
Update etcd, kubernetes, prometheus dependencies
neoaggelos Feb 25, 2022
f175969
Update CRD to v1
neoaggelos Feb 26, 2022
bb0b0a2
Define allow-all schema
neoaggelos Feb 26, 2022
bbb708a
Pretty print etcd clusters
neoaggelos Feb 26, 2022
59d2e7e
Pretty print CRD
neoaggelos Feb 26, 2022
e9749be
Take the CRD definition out of the operator
neoaggelos Feb 26, 2022
fd034d4
Update API to v1beta3
neoaggelos Feb 26, 2022
8dbc438
Print latest condition with etcdcluster
neoaggelos Feb 26, 2022
2e414cb
add phase to printer columns
neoaggelos Feb 26, 2022
375aee6
Remove obsolete Gopkg.toml file
neoaggelos Feb 26, 2022
4331623
Support hostPath volumes
neoaggelos Feb 26, 2022
745991f
Set HostPath volume type to DirectoryOrCreate
neoaggelos Feb 26, 2022
67aa8fb
Add manifests for deploying mayastor etcd
neoaggelos Feb 26, 2022
587e44f
Support custom restart policy for etcd pods
neoaggelos Feb 27, 2022
b5471ef
Add LimitSizeToMaxReadyNodes field
neoaggelos Feb 27, 2022
7edf598
fixup! Add LimitSizeToMaxReadyNodes field
neoaggelos Feb 27, 2022
4a582d6
fixup! Add LimitSizeToMaxReadyNodes field
neoaggelos Feb 27, 2022
0d6c1c1
Fix deployment and RBAC yaml files
neoaggelos Feb 27, 2022
4f99d15
fixup! Add LimitSizeToMaxReadyNodes field
neoaggelos Feb 27, 2022
e47644a
Update ChangeLog
neoaggelos Feb 27, 2022
8248d3e
Update example etcd cluster to 3 nodes
neoaggelos Feb 27, 2022
568fe11
Add a working image to the example deployment
neoaggelos Feb 27, 2022
3ddc64b
Add etcd-operator helm chart
neoaggelos Mar 11, 2022
f51090f
Change group to etcd.database.canonical.com
neoaggelos Mar 14, 2022
7ce294c
Bump version to 0.10.0+git
neoaggelos Mar 14, 2022
eeeb733
Add Dockerfile
neoaggelos Mar 14, 2022
cc372ea
Update image in etcd-operator helm chart
neoaggelos Mar 14, 2022
ff1a06c
Configure helm chart repository
neoaggelos Mar 14, 2022
832fed6
Fix ln -s command
neoaggelos Mar 14, 2022
61fd2ff
fix empty pod policy spec breaking operator
neoaggelos Mar 17, 2022
1a3008f
Remove symlink for latest chart
neoaggelos Mar 30, 2022
6325456
Make securityContext configurable
neoaggelos Mar 30, 2022
4108d90
Merge branch 'fix-helm' into revive
neoaggelos Mar 30, 2022
2c19720
Enable PublishNotReadyAddresses on the etcd peer service
neoaggelos Mar 31, 2022
216f3fa
Update operator image tag to include latest fixes
neoaggelos Mar 31, 2022
10aabff
Fix helm chart repository URL
neoaggelos Apr 4, 2022
f242df9
Fix clusters crashing when pod spec is empty
neoaggelos Apr 23, 2022
29fb1ab
Add a `/tmp` emptyDir to the etcd operator deployment
neoaggelos Apr 23, 2022
5adfa00
Use etcd 3.5.4 by default
neoaggelos May 11, 2022
df04d3e
Mention etcd version change in changelog
neoaggelos May 12, 2022
39401b6
Add makefile for multi-arch images
neoaggelos May 12, 2022
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
15 changes: 15 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,9 +3,24 @@
### Added

- Added `spec.Pod.ClusterDomain` to explicitly set the cluster domain used for the etcd member URLs. [#2082](https://github.com/coreos/etcd-operator/pull/2082)
- Added `spec.Pod.HostPathVolume` to use hostpath volumes for etcd data.
- Added `spec.LimitSizeToMaxReadyNodes` to prevent scaling up clusters when there is shortage of ready nodes.
- Added `spec.Pod.RestartPolicy` to add configurable RestartPolicy for etcd pods. This is particularly useful for single-node etcd clusters that fail if the pod stops (e.g. during a node reboot).
- Added a Helm Chart to deploy the operator and etcd clusters.
- Added `Dockerfile` to build etcd-operator.

### Changed

- Changes in the cluster object's type metadata:
- The `apiVersion` field has been changed from `etcd.database.coreos.com/v1beta2` to `etcd.database.canonical.com/v1beta3`
- The annotation `etcd.database.coreos.com/scope: clusterwide` in `EtcdCluster` has been renamed to `etcd.database.canonical.com/scope: clusterwide`
- Migrate to `apiextensions.k8s.io/v1` for the `EtcdCluster` CRD.
- The etcd operator will no longer create CustomResourceDefinitions by default, they have been moved to `example/crd.yaml`.
- Update Kubernetes to 0.17.1.
- Update Prometheus.
- Update etcd client library to 3.5.2.
- Migrate to Go modules for building the operator.

### Removed

### Fixed
Expand Down
13 changes: 13 additions & 0 deletions Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
FROM golang:1.17 AS builder
LABEL maintainer="Angelos Kolaitis <angelos.kolaitis@canonical.com>"
WORKDIR /src
COPY . /src
RUN \
CGO_ENABLED=0 \
go build \
-a -ldflags "-s -w -extldflags '-static' -X github.com/coreos/etcd-operator/version.GitSHA=`git rev-parse --short HEAD || echo GitNotFound`" \
-o /operator ./cmd/operator

FROM scratch
COPY --from=builder /operator /operator
CMD ["/operator"]