infra/stack/kubernetes.git
3 years agoPin openshift version to avoid regression in kubernetes client 49/7849/1 1.17
Cian Johnston [Wed, 3 Mar 2021 10:15:37 +0000 (10:15 +0000)]
Pin openshift version to avoid regression in kubernetes client

Signed-off-by: Cian Johnston <cian.johnston@est.tech>
Change-Id: Id3b173e8ae31ed36f48282c1628cd753dfec62eb

3 years agobugfix: update references to helm stable repo 90/6990/1
Cian Johnston [Thu, 7 Jan 2021 13:12:17 +0000 (13:12 +0000)]
bugfix: update references to helm stable repo

Change-Id: I2f448af2624009fae61305ac7216790e8a799525
Depends-On: If28069693257d34617086e974c137820b968afe5
Signed-off-by: Cian Johnston <cian.johnston@est.tech>
3 years agoDistribute dependencies 39/6239/1
Fatih Degirmenci [Mon, 5 Oct 2020 09:36:12 +0000 (09:36 +0000)]
Distribute dependencies

This change moves the dependencies required for Kubernetes stack to
stack itself, making sure we deal with the dependencies required for
it and no other stack.

This is achieved by
- moving operating system dependencies from engine core bindep.txt into
stack bindep.txt
- moving python dependencies from engine core requirements.txt into
stack requirements.txt
- taking setup-stack.sh script in use so engine core executes this script
from the stack

The benefits of this approach
- ability to control dependencies directly within the stack without
impacting other stacks and engine core
- package dependencies required for the stack itself and not everything
- allow identifying engine core dependencies so they can be made part of
stack packaging, enabling stacks to stop using leftovers of an earlier
deployment done for a different stack
- pave the way for multi distro support since some stacks may support
more than one distro and that support can be introduced and maintained
within corresponding stack
- deferred processing of dependencies allow to engine become functioning
faster than how it is know. also, the overall deployment time will be
shortened a bit with the help of this due to dealing with dependencies
based on stack

Depends-On: I713d0e333bc4a01c92e6aa6ae1a4e6f3d9efe2ad
Change-Id: I9508275fe581cea15af3c9e7dfa0b3342370460b

3 years agoPackage busybox container image for ceph workaround 10/5610/1
Fatih Degirmenci [Fri, 31 Jul 2020 21:15:57 +0000 (21:15 +0000)]
Package busybox container image for ceph workaround

Busybox image is not packaged for offline deployments, causing
pod to fail coming up as the image is not available in local
docker registry. Adding image to list of images to pull and
package. Busybox repo in the install template is also updated
in order to get rid of duplicated path and adjust it based on
the path it gets on local registry.

Warning  Failed     118s (x4 over 3m56s)        kubelet, master0   Failed to pull image "engine.local/library/busybox/library/busybox:1.32.0": rpc error: code = Unknown desc = Error response from daemon: manifest for engine.local/library/busybox/library/busybox:1.32.0 not found

Change-Id: Ibc173049c1bae5676dde2a686bd6092761dc645d

3 years agoAdd workaround for tunnel connectivity 06/5606/1
afenner [Mon, 27 Jul 2020 13:53:19 +0000 (14:53 +0100)]
Add workaround for tunnel connectivity

This patch creates a DeamonSet (pod on each node) that pings all the ipip tunnels of all the other nodes.
It should be removed once we find why the tunnels aren't open without pinging

Signed-off-by: afenner <andrew.fenner@est.tech>
Change-Id: Ic4e8241aa2a014daa0d299186d07615ee79030a2
Signed-off-by: afenner <andrew.fenner@est.tech>
(cherry picked from commit b7924a953ce9f8769dfe1a3b1db65c92bf929275)

3 years agoAdd Shared Storage as optional 30/5530/1
Ignacio Pascual [Wed, 22 Jul 2020 13:57:51 +0000 (15:57 +0200)]
Add Shared Storage as optional

In some setups there will be no shared storage configured.
The current playbooks will always create a cephfs Storage Class,
this change will make it optional and controlled from a variable.

Change-Id: I70a57e50cd0ecdc4ac300d46e1d269ebcb90a5aa

3 years agoBump cni version to v0.8.6 for k8s 1.17 98/5398/1
Fatih Degirmenci [Mon, 13 Jul 2020 15:26:24 +0000 (15:26 +0000)]
Bump cni version to v0.8.6 for k8s 1.17

This change brings in the fix for cni version which was missed
during refactoring.

Depends-On: I6a4bf349508d4a355360154f00b167766de21eb4
Change-Id: I8fd8126c3209b5c8ed97d97aacb2191d906f2ba0

3 years agobugfix: Set git folder for recording repo shas
Fatih Degirmenci [Sat, 11 Jul 2020 22:11:08 +0000 (22:11 +0000)]
bugfix: Set git folder for recording repo shas

Change-Id: I38aa63be3becc39e4dc0673c90779944e8cd8820
(cherry picked from commit 9d08e68a2dc446026017562652fed4ebe69e1ccd)

3 years agoKeep tarball and release properties for release 72/5372/1
Fatih Degirmenci [Sat, 11 Jul 2020 12:55:52 +0000 (12:55 +0000)]
Keep tarball and release properties for release

The installer file created by the package role can not be scanned by
JFrog XRAY due to it being an incompatible artifact type. In order for
the artifact to be scanned, it needs to be in one of the supported
formats.

This change updates package role to keep the tarball if the packaging
is run by release job in order to make scanning of artifacts possible.

In addition to keeping the tarball around, release job records release
metadata in release.properties file. This file is needed to be included
in tarball and installer file in order to make the traceability better.

Please note that both of these operations take effect if the release
metadata file /tmp/release.properties exists. This file is only created
by release job on Jenkins and does not exist for manual builds so there
is not change for manual packaging.

Change-Id: I3189806fc7a45b63328dc7236c94119f2ee9e295
(cherry picked from commit f8feaedc7ce75ad5524fab105d0b6d7dc178f9fc)

3 years agoIntroduce stack setup script 42/5342/1
Fatih Degirmenci [Thu, 9 Jul 2020 07:33:47 +0000 (07:33 +0000)]
Introduce stack setup script

This change introduces setup-stack.sh script which will do setup
for the stack itself such as setting the default scenario if not
specified by the user and more importantly installing the dependencies.

Further changes will be sent, moving dependencies to stacks and
installations of those into stack setup script.

Depends-On: I6b9d27edd2016594b197a368b8ed393e98beef7f
Change-Id: I7892fa217a7db5c0c7b84a1b57aa6f311ee14cc6
(cherry picked from commit d7c1e7673b19be3c8ee33283762aba19a606b6cd)

3 years agoControl docker version within stack 26/5326/1
Fatih Degirmenci [Tue, 7 Jul 2020 06:48:24 +0000 (06:48 +0000)]
Control docker version within stack

Docker version was originally controlled within engine repository
but it is more appropriate to control it within the stack as the
version requirements could be different across the stacks. See the
dependent change for how it was controlled before.

Depends-On: Id5f2c72e35bba4d5ab413f7b19119330540f5674
Change-Id: I2720d6b6ddcde0f742f527e3f86b3085f13aaeda
(cherry picked from commit bfdd3d8ef9d2aa002bab69ebd36f971df3918146)

3 years agoBring Kubernetes 1.17 52/5252/1
Fatih Degirmenci [Thu, 2 Jul 2020 12:27:50 +0000 (12:27 +0000)]
Bring Kubernetes 1.17

We will soon bump Kubernetes to 1.18 on master branch so this
change creates 1.17 branch for Kubernetes in order to continue
supporting it without issues.

Change-Id: I753b8a6d2a41207ef074dc5075508b9c8ac2fb70

3 years agoMove pre, postinstall, scenario, and apps to stack 58/5158/4
Fatih Degirmenci [Wed, 24 Jun 2020 13:22:44 +0000 (13:22 +0000)]
Move pre, postinstall, scenario, and apps to stack

Preinstall, postinstall, scenario, and apps are specific
to stack composition and more appropriate to locate them
within the stacks themselves rather than the installers.
This makes it possible for different stacks to configure
target deployment according to their needs and use the
installer without thinking about potential effects the
changes could cause on other stacks that may be using the
same installer.

An example to this is Kubernetes and ONAP stacks and the
CEPH configuration. Both stacks use Kubespray but the
configuration of Kubernetes differs between them. By moving
the pre/post/scenario/app configuration into stacks
themselves, they become independent from each other as
much as possible.

Please note that once this change goes in, the dependent
change needs to be verified and submitted in order to
conclude the transition.

https://gerrit.nordix.org/c/infra/installer/kubespray/+/5157

Change-Id: I24d7e9546034b385565708f528ed9caddf03ae26

3 years agoCreate engine kubernetes stack 16/4816/5
Fatih Degirmenci [Tue, 19 May 2020 08:13:26 +0000 (08:13 +0000)]
Create engine kubernetes stack

This change creates kubernetes stack for engine in order to package,
deploy, and test stacks independently from engine core.

The main feature this enables is the ability to develop stacks
in their own repository with proper versioning and branching no
matter how the tools (provisioner and installer) are developed.
The stack simply selects versions of the tools (could be branches)
and the rest is done accordingly.

The role package which was previously located under
infra/installer/kubespray is moved into this repository in order to
handle what to package within the stack since some of the artifacts
we package do not belong to installer but to the stack itself.

Change-Id: I760d4d904544dad768525e999ebe53e156464111

3 years agoSet up repository 04/4604/2
Fatih Degirmenci [Fri, 1 May 2020 06:28:45 +0000 (06:28 +0000)]
Set up repository

Change-Id: Ia4bc2dd99a5ec808af1be471ce32ad8a1021b68c

3 years agoInitial empty repository
Fatih Degirmenci [Sun, 26 Apr 2020 22:18:27 +0000 (22:18 +0000)]
Initial empty repository