30 Commits

Author SHA1 Message Date
Sean Eagan
f402171e42 Move to v0.3.1 of kubernetes-entrypoint
Move to v0.3.1 of kubernetes-entrypoint which has 2 breaking changes to
pod dependencies, and also adds support for depending on jobs via
labels.

Change-Id: I2bafc2153ddd46b3833b253a2e7950bccbccf8ed
2018-04-25 12:38:44 -05:00
Steve Wilkerson
64d8c738d0 Update htk-manifest with entrypoint updates
This updates the htk-manifests with the updates required to use
the updated dependency checking for dynamic dependencies

Change-Id: I696459ca8b29a80a3096a9d33c1a68b1543534c9
2018-04-19 21:55:44 +00:00
Steve Wilkerson
e166432a98 Add manifest for image_repo_sync job
This ps proposes adding a common template for the image_repo_sync
jobs for consumption by the charts

Change-Id: I48476d1e4fd94bd1b08b13b46983e3d999f8d8ca
2018-04-19 14:10:08 +00:00
Zuul
626b94e0c8 Merge "Helm-Toolkit: Kubernetes Entrypoint, simplify image dependencies" 2018-04-17 15:11:00 +00:00
Steve Wilkerson
7757400edc OSH-infra: move charts to use ingress manifest in htk
This moves all relevant charts in osh-infra to use the htk manifest
template for ingresses, bringing them in line with the charts in
openstack-helm

Change-Id: Ic9c3cc6f0051fa66b6f88ec2b2725698b36ce824
2018-04-13 15:41:12 -05:00
Pete Birley
b9336ca613 Helm-Toolkit: Kubernetes Entrypoint, simplify image dependencies
This PS simplify the logic for dyanmicly merging the image management
depenencies into pod deps when active.

Change-Id: I0cf6c93173bc5fbce697ac15be8697d3b1326d0a
2018-04-13 08:42:37 -05:00
Pete Birley
37de340600 Helm-Toolkit: Reduce delta between OSH and OSH-Infra to image repo
This PS reduces the delta between OSH and OSH-Infra helm toolkits
to simply the image repo management functions.

Change-Id: I3addfbcda6a3c1d34c9f967be07eaceffb468f0e
2018-03-31 08:45:05 -05:00
portdirect
0c2e96d87e Helm-Toolkit: Reduce delta between OSH and OSH-Infra
This PS reduces the delta between OSH and OSH-Infra helm toolkits.

Change-Id: I00a684b3801a0990550f55c8facb0252fddb67f2
2018-03-30 16:36:43 -04:00
Sean Eagan
db15b5e30b Support pod dependencies
Adds support for a new feature of kubernetes-entrypoint, pod
dependencies, that was added in v0.3.0.

Change-Id: I78d9e0545ca3b837cd2386783386a253f7f5a2d6
2018-03-20 10:53:53 -05:00
Sean Eagan
641c79c902 Add deep merge utility to helm-toolkit
Adds "helm-toolkit.utils.merge" which is a replacement for the
upstream sprig "merge" function which didn't quite do what we
wanted, specifically it didn't merge slices, it just overrode
one with the other.  This PS also updates existing callsites
of the sprig merge with "helm-toolkit.utils.merge".

Change-Id: I456349558d4cf941d1bcb07fc76d0688b0a10782
2018-02-13 10:08:50 -06:00
Zuul
27c46b5603 Merge "Provide additional flexibility for the calico chart" 2018-02-06 22:10:21 +00:00
Alan Meadows
c10713bde9 Provide additional flexibility for the calico chart
* Ingests the bird templates so that we can override them
to support things such as custom BGP ports (listen) and
neighbors (remote)

* Supports announcing addresses that are within the
.Values.networking.bgp.ipv4|6.additional_cidrs list
in support of ingress controllers that can create
dummy interfaces and assign addresses to be announced

* Introduces a new job to perform calicoctl manipulation to
support manipulating the mesh, adding peers, and changing the
ipPool settings which is value driven

* Support custom port binding and specific interface binding
to allow custom BGP port selection for IPv4 and IPv6

* Instantiates calicoctl as a utility on hosts

* Adds a new function to helm-toolkit to retrieve the http
or https prefix for an endpoint

* Supports https based etcd backends with new certificate
parameters

* Finally, introduces more strict bgp listening to allow
multiple hostNet bgp speakers to run in parallel

Change-Id: Ib4d00befddbd8498b9dcc693409b8b2577458497
2018-01-30 08:43:04 -08:00
Steve Wilkerson
9ffc748979 helm-toolkit prometheus service annotation clean up
This adds checks for the fields in the service annotations for
prometheus, similar to the checks made for the pod annotations.
It also moves prometheus annotations under a prometheus: key
under a top-level monitoring tree to allow for other monitoring
mechanisms independent of the endpoints tree

Change-Id: I4be6d6ad8e74e8ca52bd224ceddad785577bf6c7
2018-01-16 20:35:50 +00:00
Steve Wilkerson
182c0c5618 Remove unneeded context in prometheus service annotation
Removes an unused context declaration from the prometheus service
annotation template in helm-toolkit, and removes all references to
it

Change-Id: I57612c1504cf046f367ee10d26ef3062ebe528d3
2018-01-12 08:28:48 -06:00
portdirect
2e0b57ad93 KubeADM-AIO: Drive basic CNI configuration via values
This PS drives basic CNI options via ansible playbook in the
KubeADM-AIO container and modifies the calico chart to support
configuration via values.

Change-Id: Iaf2f9807438c3a34e797c62c2c6913edb677997c
2018-01-07 12:32:40 -05:00
Tin Lam
e234e8d932 RBAC: Fix issue with inclusion of empty jobs or daemonsets
Currently, the rbac logic would allow for ``jobs`` or ``daemonsets``
if it is specified in the dependencies, even if they may just be empty
or null.  This patch set addresses this by checking the jobs or
daemonsets map in the value.yaml is non-empty before including it
in the Role.

Change-Id: I67f940e1e71c371b63d8d1e9b4f47af633a6bfa4
2017-12-28 04:28:11 -06:00
Zuul
a4a070efea Merge "Add prometheus annotations to calico-nodes for felix metrics" 2017-12-27 18:14:03 +00:00
Steve Wilkerson
9eec1e2da3 Add prometheus annotations to calico-nodes for felix metrics
This adds the prometheus annotations to the calico-node daemonset
to allow prometheus to create a scrape config for calico metrics.
This requires adding a annotation tree in the chart's values.yaml
file

Change-Id: I0e62fce34ea8de6d0241ea00aaae66187b808c81
2017-12-26 10:21:20 -06:00
portdirect
69be9ced33 RBAC: make apiVersion consistent across all snippets
This PS makes the API version consistent across all snippets in
helm-toolkit for rbac.

Change-Id: I38f742cca407e60a5a0193d5e33a1d939e455124
2017-12-26 10:25:55 -05:00
Zuul
8673d55243 Merge "Helm-Toolkit: Split prom pod annotations templates into files" 2017-12-21 17:42:45 +00:00
portdirect
c11c45dda7 Helm-Toolkit: Split prom pod annotations templates into files
This PS splits the `prometheus_pod_annotations.tpl` into seperate
files for each definition contained within it to be consistent
with other funstions in Helm-Toolkit, which can be located by path
from their name.

Change-Id: Ief9e31ead7eb1028cedd8e608d6b11e53e63e515
2017-12-19 20:24:39 -05:00
Tin Lam
628fd3007d RBAC: Consolidate serviceaccounts and restrict rbac
Currently, services have two serviceaccounts: one specified in the
chart that cannot read anything, and one injected via helm-toolkit
that can read everything. This patch set refactors the logic to:

- cleanup the roles and their binding automatically when the helm
  chart is deleted;
- remove the need to separately mount a serviceaccount  with secret;
- better handling of namespaces resource restriction.

Co-Authored-By: portdirect <pete@port.direct>

Change-Id: I47d41e0cad9b5b002f59fc9652bad2cc025538dc
2017-12-19 20:22:57 -05:00
Alan Meadows
1af212c0ab Support IP addresses as hosts within keystone_endpoint_uri_lookup
This allows the keystone endpoint uri lookup function to
avoid adding a FQDN suffix to an IP address based host
entry.

Change-Id: I016e6512fb21182a8be9e3de1e4a2da59a20fb36
2017-12-13 16:45:48 +00:00
Steve Wilkerson
429a4edd86 Prometheus monitoring for OSH infra
This will move prometheus to OSH-infra to be included as part of
the basic infrastructure deploy for openstack-helm. It includes
charts for Prometheus, Node Exporter, Kube-State-Metrics, and
Alertmanager. It provides a base for monitoring and alerting
for the underlying infrastructure

Partially Implements: blueprint osh-monitoring

Change-Id: Ie453373b54c5f1825339ce0566e4b5d0f74abc20
2017-11-30 09:43:17 -06:00
intlabs
436845541b Image local repo jobs and multiple namespace support
This PS introduces support for using a local docker repo to
store images if desired, and adds multiple namespace support
to the entrypoint lookup functions.

Change-Id: Ib51aa30d3cc033795fe13f6c40a57d46171ad586
2017-11-02 16:23:32 -05:00
intlabs
308f8a2121 Calico: Add basic dependency checks and rbac support
This PS update the calico chart and deployment to use
Kubernetes entrypoint, and apply appropriate RBAC rules to
the pods.

Change-Id: I9d875f50c4767b6714a4931b9ade0a6f94b533c2
2017-11-01 16:52:52 +00:00
intlabs
fd683f4241 Chart Runner: Add NFS provisoner and Docker Registry
This PS adds the NFS provisioner and Docker Registry to the OSH-Infra Repo,
these are being used as initial candidates for moving as they are simple
charts and allow the chart runner logic to be developed in the gate
playbooks.

Change-Id: Ie80b8578aafd3fe7252d3dcb603ea6af7586776e
2017-11-01 11:40:09 -05:00
intlabs
8c9f70401a Helm-Toolkit: Import into infra repo from primary
This PS imports helm-toolkit into the Helm Infra repo

Change-Id: Ife3451f9af5a40dbd5aa2414fc6226b26f81ede1
2017-10-26 19:33:36 -05:00
intlabs
366a175447 Remove old helm-toolkit
This PS removes the old helm toolkit in preperation for the repo to
be initialised with openstack-helm-infra and the zuul v3 gate.

Change-Id: I4fa3be6bc240c061620dc3b5533136107a99065c
2017-10-24 17:42:50 -05:00
Steve Wilkerson
34a29bfac1 Add helm-toolkit to OSH-infra
Add helm-toolkit to OSH-infra to support using zuul-cloner in
the gates for openstack-helm. As infra is appropriate for charts
required to run openstack-helm, helm-toolkit should be centralized
here

Change-Id: I9d7f80a405f9fb2dec7e5fcdc8294a8c35154272
2017-07-05 09:13:29 -05:00