Commit Graph

25 Commits

Author SHA1 Message Date
Sergiy Markin 32ad8a96b0 [focal] Python modules sync with Airship project
- uplifted/downgraded some python modules
- fixed falcon.API deprecation - -> falcon.App
- uplifted deckhand reference for python deps
- fixed formatting style  using yapf linter
- added bindep role and bindep.txt file with required deps
- fixed quai docker image publishing
- re-enabled openstack-tox-py38 gate job

Change-Id: I0e248182efad75630721a1291bc86a5edc79c22a
2023-04-21 06:09:14 +00:00
Mark Burnett 8bc8c7c028 Implement encryption for genesis/join scripts
This introduces a new document called `EncryptionPolicy` to configure
this behavior.  It currently only supports using symmetric encryption
with `GPG`, but that should be available on all Ubuntu systems (which is
what we currently support) and should also be fairly reliable.

Change-Id: I06d4faa119b736773df0d8cbf0e7a23fd98edcdf
Depends-On: https://review.openstack.org/#/c/602175/
2018-09-14 11:32:12 -05:00
Mark Burnett 26e6792690 Allow adding new definitions to PKICatalog
* Detect and re-use existing Certs/Keys
* Negative functional test for join with missing cert
* Positive functional test to generate cert after initial construction
* Extract some promenade test code into tools/g2/lib/promenade.sh
* Add timestamps to tar'd up files

Change-Id: Ib717785fc2c8f6cd1db1970ecdf1f5184ed40e92
2018-05-01 14:01:03 +00:00
Mark Burnett b4449434a5 Fix DNS name list for kube services in certs
* Also adds liveness and readiness probes for Prom deployment

Change-Id: Id65d1e555e14478f2439c14dd6d6d7952411256d
2018-02-14 15:33:41 -06:00
Hassan Kaous f9c8481927 Refactor the generator function to use PKIcatalog.
Change-Id: I9c049b8499a14a537e7cc862ca96f84cf80b6694
2018-02-13 11:24:02 -05:00
Hassan Kaous e9f8035c60 Kubernetes Proxy Service Account
Use service account token to manage certs

Change-Id: Ibfdef1bcea13f87fc52ef03c59021ed31a0df3e0
2018-02-12 02:37:49 +00:00
Mark Burnett ff3787c2ad Use HAProxy for apiserver discovery
This removes the reliance on coredns for APIserver discovery, allowing
a simpler configuration that is compatible with corednx 1.0.x

Change-Id: Ia3b7b5627c16ec47af6b0d6d5e8dee2674e9b1ee
2018-02-08 14:30:35 -06:00
Mark Burnett 22e2196b7c Add lint and fmt tox jobs
Change-Id: I487a4738bc19de52b094bb2eadbcd083c4e2d538
2017-10-25 11:01:18 -04:00
Mark Burnett 95643147c5 Migrate to self hosted using charts
This change includes several interconnected features:

* Migration to Deckhand-based configuration.  This is integrated here,
  because new configuration data were needed, so it would have been
  wasted effort to either implement it in the old format or to update
  the old configuration data to Dechkand format.
* Failing faster with stronger validation.  Migration to Deckhand
  configuration was a good opportunity to add schema validation, which
  is a requirement in the near term anyway.  Additionally, rendering
  all templates up front adds an additional layer of "fail-fast".
* Separation of certificate generation and configuration assembly into
  different commands.  Combined with Deckhand substitution, this creates
  a much clearer distinction between Promenade configuration and
  deployable secrets.
* Migration of components to charts.  This is a key step that will
  enable support for dynamic node management.  Additionally, this paves
  the way for significant configurability in component deployment.
* Version of kubelet is configurable & controlled via download url.
* Restructuring templates to be more intuitive.  Many of the templates
  require changes or deletion due to the migration to charts.
* Installation of pre-configured useful tools on hosts, including calicoctl.
* DNS is now provided by coredns, which is highly configurable.

Change-Id: I9f2d8da6346f4308be5083a54764ce6035a2e10c
2017-10-17 13:29:46 -05:00
Scott Hussey d0c1256866 Merge pull request #41 from mark-burnett/testing-framework
Initial testing framework
2017-07-28 14:54:56 -05:00
Mark Burnett d1334e4a59 Allow additional Armada data to be provided 2017-07-28 09:15:13 -05:00
Mark Burnett d04f333686 Add skeleton for validation scripts
* validate-bootstrap.sh is to be used to validate after genesis
* validate-cluster.sh is to be used to validate a full cluster
2017-07-27 07:56:20 -05:00
Mark Burnett 8ea46db324 Merge remote-tracking branch 'origin/master' into calico-etcd 2017-07-18 12:58:16 -05:00
Mark Burnett e36d2d864c Only distribute etcd certificates to masters
They are not needed on other nodes.
2017-07-10 20:53:12 -05:00
Mark Burnett f49c8d6834 Use a separate etcd cluster for calico 2017-07-10 20:52:09 -05:00
Mark Burnett 8070fc64a1 add Version to generate required_kinds 2017-07-05 12:47:12 -05:00
Mark Burnett 3369012f20 render genesis script 2017-07-03 14:33:37 -05:00
Mark Burnett 4757f2f762 render "join" script into config map 2017-07-03 14:33:37 -05:00
Mark Burnett 9f968115b5 Replace flannel with calico (#26)
* Uses the existing Kubernetes etcd cluster to store calico data.
* Adds `b64enc` filter for templates (useful for Secrets).
2017-06-29 16:24:31 -07:00
Mark Burnett dbef5b312d add missing master & network config to bundle 2017-06-27 14:43:26 -05:00
Mark Burnett a9784b4c83 fix some issues in multi-master testing 2017-06-23 07:57:43 -05:00
Mark Burnett 595e0ef4a9 add configuration bundle for drydock export 2017-06-22 19:54:22 -05:00
Mark Burnett 62074b4696 allow roles to be empty 2017-06-21 10:54:19 -05:00
Mark Burnett dee398d5e9 add templates for certs and keys 2017-06-20 11:11:17 -05:00
Mark Burnett 9b165b6c70 implment initial config + pki generation 2017-06-20 10:46:45 -05:00