Changelog

(unreleased)

Chore

  • Change debian default from bullseye to bookworm. [Glenn Marcy]

  • Updates for k8s distro to work with all guest os. [Glenn Marcy]

  • Remove more unused artifacts. [Glenn Marcy]

CI

  • Re-build periodic_jobs.md. [kubeinit-bot]

  • Re-build periodic_jobs.md. [kubeinit-bot]

  • Fix digest field. [Carlos Camacho]

    This commit refers to the correct image digest field.

  • Fix container images in quay. [Carlos Camacho]

    This commit makes sure the images labels also match the hashes so we make sure we have the latest image for each hash.

Documentation

  • Remove extra header line. [Carlos Camacho]

    This commit removes an extra line in the changelog file.

Features

  • Deprecate unused distros and overall cleanup. [Carlos Camacho]

    This commit removes all the code that was not used in the previous 2y. Including rke, cdk, and eks. There is still more to be cleaned up, like the libvirt Windows server guests.

v2.2.2 - Release date: 2023-10-25

Chore

  • Update OKD. [Carlos Camacho]

    This commit updates OKD to the latest available version.

  • Add new GH issue. [Carlos Camacho]

    This commit adds a new issue for logging CI results.

  • Update to latest OKD 4.12. [Carlos Camacho]

    This commit upgrades de default OKD version to the latest available.

  • Remove ci/ansible and kubeinit_setup. [Glenn Marcy]

  • Fix lint issues. [Carlos Camacho]

    This commit fix a few linter issues.

CI

  • Remove pagination when publishing in Galaxy. [Carlos Camacho]

    This commit removes the pagination when getting the published collection versions.

  • Build 2.2.2 and use Galaxy v3 API. [Carlos Camacho]

    This commit pushes a new version for the collection and uses the NG API v3

  • Revert to main galaxy API. [Carlos Camacho]

    This commit points back the galaxy endpoint to the production API.

  • Test new galaxy endpoint. [Carlos Camacho]

    This commit checks the NG galaxy endpoint for publishing the collection.

  • Release 2.2.1. [Carlos Camacho]

    This commit releases a new minor version.

  • Include community.docker. [Carlos Camacho]

    This commit includes community.docker for the molecule tests execution.

  • Remove extra ansible arguments. [Carlos Camacho]

    This commit removes the extra argument passed in pytest when running the molecule testing suite.

  • Include docker log after distro_test job. [Carlos Camacho]

    This commit gets the logs after running the distro_test job.

  • Fix linter issues. [Carlos Camacho]

    This commit disables the experimental new lint checks.

  • Fix CI Limit rate message. [Carlos Camacho]

    This commit adds a better message description when there is a failure in GH actions because of a GH limit rate API issue.

  • Update GH tracker id. [Carlos Camacho]

    This commit updates the GH CI results tracker id.

  • Re-build periodic_jobs.md. [kubeinit-bot]

  • Sync up containers on push. [Carlos Camacho]

    This commit makes the container mirror script to run in evrey push.

  • Include flannel containers. [Carlos Camacho]

    This commit includes container images for flannel in the vanilla K8s scenario.

  • Move badge status instead of copy. [Carlos Camacho]

    This commit moves the badge files instead of copying it.

  • Allow write all to badge_status. [Carlos Camacho]

    This commit allow write access to the badge status image.

  • Use rsvg-convert for docs. [Carlos Camacho]

    This commit changes the tool used for rendering the PNG images from the SVG sources in the documentation.

  • Linters fix and package dependencies. [Carlos Camacho]

    This commit fixes the current lint errors and includes the missing dependencies for imagemagick.

Features

  • Include kustomize. [Carlos Camacho]

    This commit adds kustomize by default in each distro.

  • Upgrade CDK version to 1.26/jammy. [Carlos Camacho]

    This commit upgrades the CDK version that is deployed to use jammy and k8s 1.26.

  • Remove unused roles. [Carlos Camacho]

    This commit keeps cleaning unused roles until further notice.

  • Remove nextgen integration. [Carlos Camacho]

    This commit removes an integration that will not be used potentially anymore.

  • Remove submariner integration. [Carlos Camacho]

    This commit removes the submariner integration that is not used anymore.

  • Upgrade OKD to 4.12. [Carlos Camacho]

    This commit upgrades the OKD version to the latest.

  • Upgrade Kubernetes and Flannel to latest stable. [Carlos Camacho]

    This commit upgrades the Kubernetes and flannel version deployed in the vanilla scenario to their corresponding latest stable versions.

  • Include containerd as runtime in Vanila k8s. [Carlos Camacho]

    This commit includes the option of using containerd in Vanila K8s to support confidential containers.

  • Add Confidential Containers support. [Carlos Camacho]

    This patch includes the initial support for adding Confidential Containers in the deployments.

Fixes

  • Do not start podman. [Carlos Camacho]

    There is no podman service to start.

  • Use the correct socket service. [Carlos Camacho]

    This commit removes the podman service restart, RKE uses docker instead of podman.

  • Remove libvirt virt-install options that are not used. [Carlos Camacho]

    This commit removes unused params for virt-install

  • String in revision error PEP 440. [Carlos Camacho]

    The version specified is not a valid version according to PEP 440. This may not work as expected with newer versions of setuptools, pip, and PyPI.

  • Bind flannel to crio. [Carlos Camacho]

    This commit includes the correct pluging mapping for cni-conf.json

  • Fix subnet path for /etc/cni/net.d/87-podman-bridge.conflist. [Carlos Camacho]

    This commit fixes the current path for the subnet in /etc/cni/net.d/87-podman-bridge.conflist

  • Fix indentation. [Carlos Camacho]

    This commit fixes an indentation nit in the flannel config template.

  • Fix cri-o cbr0 interface file path. [Carlos Camacho]

    This commit files the patch of the /etc/cni/net.d/87-crio-bridge.conflist with the current installed cri-o versions.

  • Removeduplicated key. [Carlos Camacho]

    This commit fixes a duplicated key nit in the libvirt driver role.

  • Allow unsecure Kubernetes repos. [Carlos Camacho]

    This commit make sure the official K8s repos are trusted.

  • Trust kubernetes repositories. [Carlos Camacho]

    This commit makes sure the Kubernetes repositories are trusted.

  • Make sure pod CIDR is consistent. [Carlos Camacho]

    This commit fixes an inconsistency in the POD CIDR parameter for Vanilla K8s.

  • Run EKS with the latest revision available. [Carlos Camacho]

    This commit makes sure the installer gets the latest revision available.

  • Update RKE to latest. [Carlos Camacho]

    This commit upgrades the deployed RKE version to the latest available.

  • Run EKS with the latest revision available. [Carlos Camacho]

    This commit makes sure the installer gets the latest revision available.

  • Make consistent the virtio image iso. [Carlos Camacho]

    This commit makes sure the virtio image is defined in a fdefault variable.

  • Upgrade CentOS stream image. [Carlos Camacho]

    This commit updates the version of the CentOS Stream 9 used in the deployments.

  • Make sure default_capabilities is consistent. [Carlos Camacho]

    This commit makes sure that the default capabilities map in containers common is consistent across different versions and distributions in the Hypervisors .

  • Include wallaby for standalone TripleO. [Carlos Camacho]

    This commit includes a fix in the version of TripleO that is deployed. Also, other small docs addition for future improvement.

  • Include nginx-unprivileged. [Carlos Camacho]

    The sample app runs nginx-unprivileged.

v2.2.0 - Release date: 2023-01-19

Chore

  • Update periodic issue log. [Carlos Camacho]

    This commit updates the issue to log the periodic CI results.

  • Include the OBS status check. [Carlos Camacho]

    This commit includes a job check status for the Open Build Service.

  • Add names for blocks. [Carlos Camacho]

    This commit includes the naming for the missing blocks, so the lint check passes.

  • Enhance install guidance. [Jeff Bailey]

CI

  • Move whish to allow in tox. [Carlos Camacho]

    This commit allows external commands in tox.

  • Add user and pasword for OBS. [Carlos Camacho]

    This commit includes both the user and password to check the packages build status.

  • Fix lint issues. [Carlos Camacho]

    This commit fixes some old lint issues.

  • Allow local install. [Carlos Camacho]

    This commit allows to run the GitLab install script locally without GitLab.

  • Include a new label for OpenStack. [Carlos Camacho]

    This commit includes a new label for testing the deployments on top of OpenStack.

  • Do not update job URL if not uploading logs. [Carlos Camacho]

    This commit prevents from updating the resulting CI job URL if the logs are not uploaded to b2.

  • Allow skipping upload logs to b2. [Carlos Camacho]

    This commit allows to use the nolog label in the e2e jobs so the result is not uploaded to b2. This is useful to reduce the load on the CI CDN if there is no need to review the logs results.

  • Re-build periodic_jobs.md. [kubeinit-bot]

  • Remove unsupported scenarios from CDK. [Carlos Camacho]

    This commit removes the unssuported scenarios from CDK. It does not allow to deploy without compute nodes.

  • Enable windows workers in the CI. [Carlos Camacho]

    This commit enables Windows workers in the k8s-1-1-1 deployment spec for the CI.

  • Use nginx unprivileged in the sampleapp. [Carlos Camacho]

    This commit pulls from quay (quay.io/packit/nginx-unprivileged) the Nginx image to run the sample app.

    This will run NGINX as a non root, unprivileged user. Notable differences with respect to the official NGINX image include:

    • The default NGINX listen port is now 8080 instead of 80.

    • The default NGINX user directive in /etc/nginx/nginx.conf

    has been removed. - The default NGINX PID has been moved from /var/run/nginx.pid to /tmp/nginx.pid. *Change _temp_path variables to /tmp/.

  • Remove unneeded steps. [Carlos Camacho]

    This commit removes some unneeded steps in the GitLab trigger. No extra install step is required anymore.

  • Pull from quay the sampleapp. [Carlos Camacho]

    This commit makes pulling from quay the sampleapp.

Documentation

  • Adjust styles for roles docs. [Carlos Camacho]

    This commit fixes the style CSS in the roles documentation.

  • Include docs from roles tasks files. [Carlos Camacho]

    This commit includes the render of the docs from the tasks files content directly.

Features

  • Release 2.2.0. [Carlos Camacho]

    This commit releases a new Kubeinit 2.2.0 version.

  • Move tasks files to support the OpenStack role. [Carlos Camacho]

    This commit starts moving the libvirt specific tasks to the specific libvirt role so newer drivers can be integrated easily.

  • Include initial tasks for OS resources. [Carlos Camacho]

    This commit includes the initial tasks used for seeding the cluster’s resources deployed on an OpenStack cloud.

  • Include OpenStack deployment driver. [Carlos Camacho]

    This commit includes the folder to add a new deployment driver, as for now deployments are only supported on KVM hosts. The previous openstack role is renamed to be consumed as a user application.

  • Move to Stream9. [Carlos Camacho]

    This commit moves the pending references of CentOS Stream 8 to 9.

  • Include TripleO standalone. [Carlos Camacho]

    This commit includes a TripleO standalone deployment in the recently added Nova compute nodes.

  • Include dynamic extra roles. [Carlos Camacho]

    This commit includes the ability to run custom roles at the end of the deployments. As an example we run a custom openstack role.

  • Add extra_nodes_spec and service_nodes_spec. [Glenn Marcy]

  • Use flannel instead of NAT. [Carlos Camacho]

    This commit moves the containerD network from NAT to vxlan tunnels.

  • Run Kubelet in the Windows computes. [Carlos Camacho]

    This commit executes kubelet in the Windows compute nodes to add them to the control plane.

    fix: use static nat

    feat: use flannel in Windows computes

    fix: include original scripts

    feat: include flannel scripts

    fix: adjust nets

    fix: cleanup windows computes code

  • Join Windows computes to controlplane. [Carlos Camacho]

    This commit joins the recently supported Windows compute nodes to the cluster.

  • Allow to connect to Windows compute nodes. [Carlos Camacho]

    This commit allows to connect to Windows compute nodes in the deployment of a mixed OS Kubeinit deployment.

  • New Windows compute nodes. [Carlos Camacho]

    This feature adds Windows workloads to Kubeinit clusters.

  • Include datacenter DB model. [Carlos Camacho]

    This commit includes the initial model to include datacenter operation in the web interface.

Fixes

  • Mirror correctly images from docker.io to quay. [Carlos Camacho]

    This commit fixes the references to container images hosted in docker.io that might hit limit-rate issues.

  • Change docker.io by quay.io. [jlarriba]

    This commit reduces the number of references to docker.io to avoid the limit-rate issue.

  • Allow using CentOS stream 9 for the services deployments. [Carlos Camacho]

    This commit includes default variable to set up the services container image.

  • Include the python tripleo client. [Carlos Camacho]

    This commit includes again the python tripleo client to deploy the standalone node

  • Remove hash from tripleo-repos install. [Carlos Camacho]

    This commit fixes the usage of the date hash in the tripleo-repos package.

  • Pin ansible-playbook-grapher. [Carlos Camacho]

    This commit adds a pin to ansible-playbook-grapher for debugging.

  • Remove update from customize. [Carlos Camacho]

    This commit removes the update shortcut from the virt-customize command when deploying Stream 9 images.

  • Remove ansible-playbook-grapher workaround. [Carlos Camacho]

    This commit removes the workaround for the issue building the docs site.

  • Remove ansible-playbook-grapher pinned version. [Carlos Camacho]

    This commit removes the pin version of ansible-playbook-grapher

  • Add disk full path deploying coreos as guest. [Juan Badia Payno]

    Currently defining the VM on the deploy_coreos_guest task does not add the path of the qcow2 disk. This makes the variable kubeinit_libvirt_target_image_dir useless.

    This patch add the path to the disk in the same way as is defined on the deploy_centos_guest task.

  • Pin ansible-playbook-grapher. [Carlos Camacho]

    This commit adds a pin to ansible-playbook-grapher for debugging.

  • Update tripleo-repos. [Carlos Camacho]

    This comit updates the tripleo-repos package.

  • Check network hiccup when deploying OOO. [Carlos Camacho]

    This commit makes sure the network hiccup when installing TripleO is checked to avoid failures.

  • Remove tc from the guest images. [Carlos Camacho]

    This commit removes the ‘tc’ command from the CentOS Stream guest images as is not available anymore.

  • Invert quoting. [Carlos Camacho]

    This commit fixes the quotes order to have expended correctly the hostname variable.

  • Change distro_test to use docker. [Glenn Marcy]

  • Added missed okd refs. [Glenn Marcy]

  • Debug and clean kubelet. [Carlos Camacho]

    This commit fixes the current nssm kubelet service start.

  • Update config for centos to work with both 8-stream and 9-stream. [Glenn Marcy]

  • Update containers repositories. [Carlos Camacho]

    This commit fixes packages inconsistencies across the different Linux distributions.

  • Check connectivity issue. [Carlos Camacho]

    This commit fixes the connectivity issue blocking the connection to the first controller.

  • Check OKD connectivity. [Carlos Camacho]

    This commit fixes the apps demo role after deploying OKD. It also fixes the debug message describing the pod information by adding the sampleapp namespace.

  • Problem rendering CI logs. [Carlos Camacho]

    This commit fixes the current CI issues, when the nodes are initially deployed, they dont have the aux folder to put the CI logs but we try to remove them always, this commit checks if the folder exists before removing it.

Refactor

  • Refresh the code paths used by the setup-playbook. [Glenn Marcy]

  • Openshift role refactoring. [Glenn Marcy]

v2.1.0 - Release date: 2022-04-12

Chore

  • Release 2.1.0. [Carlos Camacho]

    This commit releases a new version of KubeInit.

CI

  • Do not run before or. [Carlos Camacho]

    This commits includes a comment for not executing any additional command after running ansible-playbook.

  • Add hypervisor_hosts_spec. [Glenn Marcy]

  • Updates to submariner jobs. [Glenn Marcy]

  • Include cluster_type. [Carlos Camacho]

    This commit includes the cluster type info, when returning the labels to be executed.

  • Update ssh connectivity checks. [Glenn Marcy]

  • Update jobs names. [Carlos Camacho]

    This commit makes some updates in the jobs namings to make them consistent.

  • Minor fixes. [Carlos Camacho]

    This commit includes some checks for the B2 interaction.

  • Use folder path instead of filename. [Carlos Camacho]

    This commit includes the required file path when displaying what files will be deleted from B2.

  • Print files to be deleted. [Carlos Camacho]

    This commit includes the file name to be deleted when is older than 10 days.

  • Remove int cast. [Carlos Camacho]

    This commit removes a wrong cast on the PR id, this variable might be int or string.

  • Ignore removing periodic job files. [Carlos Camacho]

    This commit ignores the removal of old periodic job files, and the main index. There should be only removed PR job files older than 10 days.

  • Correct string interpolation. [Carlos Camacho]

    This commit fixes an error in the string interpolation.

  • Move logs upload from deployment time. [Carlos Camacho]

    This commit splits the process of uploading the CI logs file from the deployment time.

  • Fix pending path access. [Carlos Camacho]

    This commit fixes the pending steps to CI any CI change in the project.

  • Include the job type in all PR triggers. [Carlos Camacho]

    This commit includes the –job_type=pr in all the script calls for testing PRs.

  • Include the new bash script trigger in the CI. [Carlos Camacho]

    This commit includes the bridge between the Gitlab CI trigger and the current CI scripts.

  • Clean older ci files. [Carlos Camacho]

    This commit cleans up CI files older than 10 days.

  • Include the new url for ara links. [Carlos Camacho]

    This commit includes the new CI URL in the ARA pages.

  • Re-build periodic_jobs.md. [kubeinit-bot]

  • Include the key type. [Carlos Camacho]

    This commit includes the latest key types supported by default.

  • Include b2sdk in the Github jobs status. [Carlos Camacho]

    This commit includes the b2sdk dependency for the GitHub status page render job.

  • Include initial ci trigger. [Carlos Camacho]

    This commit adds an initial CI trigger that allows to test CI changes in the PRs.

  • Refresh code to match latest prototype. [Glenn Marcy]

  • Include libselinux-python3 in selinux based hosts. [Carlos Camacho]

    This commit includes the libselinux-python3 package in the Fedora/CentOS/RHEL hosts.

  • Fix setup of minimum req hosts. [Glenn Marcy]

  • Testing. [Glenn Marcy]

  • Update distro_test to use setup playbook. [Glenn Marcy]

Documentation

  • Include new group vars in the docs. [Carlos Camacho]

    This commit includes the new group vars in the documentation.

  • Include all vars. [Carlos Camacho]

    This commit includes all group variables supported to the docs automatically.

  • Include docs placeholder for secrets. [Carlos Camacho]

    This commit includes the placeholder to document the secrets.

  • Include Backblaze as a supporter. [Carlos Camacho]

    This commit includes backblaze as a supporter.

  • Include comments from code in the docs. [Carlos Camacho]

    This commit enables the usage of comments redenred automatically in the docs.

  • Update ansible workflow diagram. [Carlos Camacho]

    This commit adds anoter iteration to the sequence diagram to describe how the deployments work.

  • Add architecture diagrams. [Carlos Camacho]

    This commit adds the placeholders for the architectural diagrams, still there is needed to finish the diagrams content.

  • Add architectural design. [Carlos Camacho]

    This commit includes the current main architectural design for a Kubeinit deployment.

Features

  • Include a FCOS version check. [Carlos Camacho]

    This commit adds a FCOS version check when deploying OKD. In this way a user can know what should be the correct version.

  • Upgrade OKD to 4.10. [Carlos Camacho]

    This commit upgrades the version that is deployed by default too OKD 4.10

  • Use yaml instead of ini for inventory. [Carlos Camacho]

    This commit moves the ini format of the inventory to yaml, and includes its content in the documentation.

  • Include Backblaze b2 file uploads. [Carlos Camacho]

    This commit includes the Backblaze b2 backend for the CI logs results.

  • Include openwhisk and nodered placeholders. [Carlos Camacho]

    This commit adds the initial code to include openwhisk and nodered.

  • Use setup playbook. [Glenn Marcy]

Fixes

  • Add missing group entry names. [Glenn Marcy]

  • Ci trigger issues. [Glenn Marcy]

  • Incorrect link to CI results. [Glenn Marcy]

  • Use Ubuntu LTS for all Ubuntu based distros. [Carlos Camacho]

    This commit adds the latest LTS version to be used in all distros.

Refactor

  • Cleanup and playbook refactoring. [Glenn Marcy]

  • More group_vars updates. [Glenn Marcy]

  • Variable name updates. [Glenn Marcy]

  • Merge setup into kubeinit. [Glenn Marcy]

v2.0.1 - Release date: 2021-12-24

Chore

  • Update okd to 4.9. [Carlos Camacho]

    This commit upgrades OKD to the latest version.

  • Include a sample application. [Carlos Camacho]

    This commit includes a simple application so we can test workloads are actually allocated correctly across the deployments.

  • Adjust file sizing. [Carlos Camacho]

    This commit adjusts the images based in the docs styling proportions.

  • Include supporters test data. [Carlos Camacho]

    This commit includes some mock data for potential future supporters.

CI

  • Initial support for gitlab merge requests. [Glenn Marcy]

  • Update to Ansible 5. [Carlos Camacho]

    This commit tests Ansible 5 in the release script.

  • Fix release scripts. [Carlos Camacho]

    This commit force fail the CI scripts if an error is found.

  • Sort and filter jobs. [Carlos Camacho]

    This commit sort and filter jobs in the CI dashboard depending on the job type.

  • Use full URL in the job id. [Carlos Camacho]

    This commit includes the whole URL when opening the internal job.

  • Add internal job link in the CI dashboard. [Carlos Camacho]

    This commit includes the internal job link in the CI dashboard.

  • Include a waitfordebug label. [Carlos Camacho]

    This commit includes a feature to stop the CI job after the cluster is deployed for debugging purposes.

  • Re-build periodic_jobs.md. [kubeinit-bot]

  • Remove extra CI cases. [Carlos Camacho]

    This commit simplifies the CI scripts by removing the case that triggers the deployment from a container as this is already tested in the GitHb workflows.

  • Cleanup install script. [Carlos Camacho]

    This commit removes some unneeded packages in the install script as they will be installed from the deployment command.

  • Re-build periodic_jobs.md. [kubeinit-bot]

  • Upgrade pip and protobuf. [Carlos Camacho]

    There is an issue with protobuf and pip upgrading the packages fixes it.

  • Upgrade pip and protobuf. [Carlos Camacho]

    There is an issue with protobuf and pip upgrading the packages fixes it.

  • Adjust CI scripts to support Debian hosts. [Carlos Camacho]

    This commit allows to use Debian (11) in the CI.

  • Add information about the host OS. [Carlos Camacho]

    This commit adds the distro information in the CI jobs.

  • Re-build periodic_jobs.md. [kubeinit-bot]

  • Fix periodic job page. [Carlos Camacho]

    This commit fixes the template of the periodic jobs.

  • Re-build periodic_jobs.md. [kubeinit-bot]

  • Fix the periodic job page. [Carlos Camacho]

    This commit includes the latest changes to support more multicluster scenarios in the periodic jobs page.

  • Re-build periodic_jobs.md. [kubeinit-bot]

  • Change docs push condition. [Carlos Camacho]

    After every push commit the docs build to the gh-pages branch.

  • Remove duplicated docs code. [Carlos Camacho]

    This commit cleans some duplicatino code for rendering the documentation.

  • Adjust latest CI scripts. [Carlos Camacho]

    This commit runs the e2e CI to make sure it works after the latest major refactor.

  • Print deployment command. [Carlos Camacho]

    This commit prints the command that will deploy the CI Job.

  • Remove cluster after each deployment. [Carlos Camacho]

    This commit makes sure there are no leftovers after deploying each cluster.

  • Re-build periodic_jobs.md. [kubeinit-bot]

  • Remove virtual services definition. [Carlos Camacho]

    This commit removes from the CI all the references to the virtual machine hosting the deployment services as they are now containerized in the bastion host.

Documentation

  • Forward README.md changes to usage.rst [R. Mathieu Landvreugd]

    Brings the changes from #568 to the rest of the documentation

  • Fix instructions. [R. Mathieu Landvreugd]

    Fix the instructions, so copy-paste is possible. write out the command options

  • Refator docs. [Carlos Camacho]

    This commit refactors the docs to have a more streamlined view of the content we will like to describe.

  • Include extra symbols. [Carlos Camacho]

    This commit includes the extra symbols available in the rst pages.

  • Include GitHub docs in the code. [Carlos Camacho]

    This commit includes the GH link in the docs pages.

  • Include unicode assets. [Carlos Camacho]

    This commit includes some unicode helpers to add symbols to the docs when they are needed.

  • Sorting titles. [Carlos Camacho]

    This commit sorts the titles consistently.

  • Organize better the usage documentation. [Carlos Camacho]

    This commit sorts better the current usage documentation.

  • Include steps to reach the services pod. [Carlos Camacho]

    This commit includes the documentation for reaching both internal and external resources of the cluster.

  • Include docs for the services pod and spec. [Carlos Camacho]

    This commit adds documentation about the services pod and the Kubeinit spec.

  • Add clarification note about mixed OS. [Carlos Camacho]

    This commit adds a note about the support of having mixed OS in the cluster hosts.

  • Add gcp as a supporter. [Carlos Camacho]

    This commit adds GCP as a supporter.

  • Include link to github. [Carlos Camacho]

    This commit adds the link to the main project’s repo.

  • Update correct domain. [Carlos Camacho]

    All the domains were wrong, this commit fixes all the referencies.

  • Include notice. [Carlos Camacho]

    This commit includes a disclaimer notice about the potential damage the automation can cause to production environments if not taking percautions.

  • Reduce image size. [Carlos Camacho]

    This commit fixes the logos height in the sphinx theme.

  • Fix styles and rst for supporters. [Carlos Camacho]

    This commit makes the style changes to show properly additional supporters.

  • Include Docker Hub info. [Carlos Camacho]

    This commit updated Docker’s decription.

  • Fix supporters styles. [Carlos Camacho]

    This commit fixes some styling issues after having all the required images and content.

  • Fix images path. [Carlos Camacho]

    This commit fixes the paths for the supporters images.

  • Add supporters page. [Carlos Camacho]

    This commit includes a docs page to thank the supporters of this project.

Features

  • Release 2.0.1. [Carlos Camacho]

    This commit releases the latest changes from the main development branch.

  • Add ansible setup for kubeinit. [Glenn Marcy]

    This commit adds a new setup folder that contains an inventory and playbook that can be used to initialize a new ansible env where kubeinit has been setup and is ready for immediate use for deployments, testing, development, etc.

  • Include submariner deployments. [Carlos Camacho]

    This commit enables the submariner deployment in a multicluster environment.

  • Added variable for selecting the ssh keytype. [Glenn Marcy]

  • Update OKD version. [Carlos Camacho]

    This commit updates the OKD version that is deployed by default.

Fixes

  • External ingress fedora support. [Glenn Marcy]

  • Fixes to Dockerfile and centos prereqs. [Glenn Marcy]

    This commit updates the Dockerfile to - Set the permission of the /root/.ssh folder to 0700 - Align the .ssh/config contents with the ansible ssh common args Also add jq to the package prereqs for Centos family hosts

  • Handle when firewalld is not active. [Glenn Marcy]

  • Add a blocking timeout to get results. [Carlos Camacho]

    This commit includes a timeout to fetch the CI results page.

  • Move to OVNKubernetes. [Carlos Camacho]

    This commit moves the default CNI cluster network provider to OVNKubernetes as it will be the eventual default.

  • Adjust date and job id. [Carlos Camacho]

    This commit fixes the CI job index with the correct date and job ID per PR job.

  • Allow having kubectl in cdk service pod and enable sampleapp. [Carlos Camacho]

    This commit makes sure kubectl is enabled in the services pod, and the sample app is deployed correctly in CDK.

  • Remove virt-top from Debian 11 and add testing repos. [Carlos Camacho]

    In Debian 11 is not yet published the list of OVN packages to deploy the cluster. This commit removes virt-top as is not available anymore, and enables the testing repos.

  • Include the correct protobuf version. [Carlos Camacho]

    This commit makes sure we have protobuf>=3.12.0 installed before pushing the CI files.

  • Better messages when not asked to stop. [Glenn Marcy]

  • Reorder commands under multi-cluster deployment. [Glenn Marcy]

  • Update data center definition. [Glenn Marcy]

    This commit updates the inventory file to support multicluster deployments.

  • Include the multicluster deployment. [Carlos Camacho]

    This commit includes the multicluster deployment, before we had to run the deployment command multiple times.

  • Use full path when calling OVN/OVN commands. [Carlos Camacho]

    The first time we deploy in new baremetal hosts after installing the required packages to install the SDN the path is not updated in runtime, this makes the deployment to fail the first time.

  • Update services role reference to create_network location. [Glenn Marcy]

Refactor

  • Cleanup several areas before gitlab-ci changes. [Glenn Marcy]

    This commit includes the following changes: - Change parameter vars passed to the create_managed_service

    and gather_host_facts tasks to begin with _param_ prefix.

    • Distribute the juju client key to all cluster nodes for cdk deployments.

    • Separate kubeinit cluster facts from the facts used for controlling the kubeinit playbook flow.

    • Check for existing firewalld rules so that we only make changes when necessary. If we do reload firewalld then also reload podman networks to rebuild iptable rules.

    • Store public key for each host in hostvars.

    • Update setup tasks to follow these same conventions.

  • Support multiple clusters per inventory. [Glenn Marcy]

    This commit adds support for multiple clusters deployed from the same inventory. Most changes are to names of resources that need to be distinct so that clusters can co-exist.

  • Documentation graph improvements. [Glenn Marcy]

  • Consolidate all distro inventories. [Glenn Marcy]

    • Remove distro-specific inventory files and playbooks. All inventory is now generated dynamically from a much smaller common static inventory, ./kubeinit/inventory, and the new kubeinit_spec variable that is passed on the command line. The syntax for that value is:

      <distro>-<driver>-<controllers>-<computes>-<hypervisors>

    • Remove instructions for adding hypervisor host entries to the /etc/hosts file of machine where the ansible playbook is run. It is sufficient to just add aliases for any hypervisor hosts in the inventory to ~/.ssh/config entries.

    • Update examples in documentation to match new CLI syntax.

    • Test paths for okd.rke/submariner deployments have been removed temporarily as we work on the new support for multiple deployed clusters on the same hypervisor hosts.

    • Simplify inventory network configuration to generate any needed network addresses from the cluster network dynamically. Only the CIDR for the cluster network is required, which still has the same 10.0.0.0/24 default.

    • Change EKS to lookup current stable kubernetes release from the distribution website.

    • Update OKD release to 4.8 and FCOS/RHCOS releases from 33/4.7 to 34/4.8 respectively.

  • Move tasks from post-deployment to deploy-cluster. [Glenn Marcy]

  • Replace with_items with loop and other updates. [Glenn Marcy]

v2.0.0 - Release date: 2021-09-30

Chore

  • Update OKD to latest 4.7. [Carlos Camacho]

    This commit updates the OKD version to the current latest.

  • Use –no-cache-dir flag to pip in dockerfiles, to save space. [Pratik Raj]

    Using “–no-cache-dir” flag in pip install ,make sure dowloaded packages by pip don’t cached on system . This is a best practise which make sure to fetch ftom repo instead of using local cached one . Further , in case of Docker Containers , by restricing caching , we can reduce image size. In term of stats , it depends upon the number of python packages multiplied by their respective size . e.g for heavy packages with a lot of dependencies it reduce a lot by don’t caching pip packages.

    Further , more detail information can be found at

    https://medium.com/sciforce/strategies-of-docker-images-optimization-2ca9cc5719b6

  • Update copyright message. [Carlos Camacho]

    This commit makes consistent the copy message.

  • Remove extra code. [Carlos Camacho]

    This commit removes extra code that is already applied in the CentOS guest images automatically.

  • Organize files. [Carlos Camacho]

    This commit moves the configure common tasks files to be consistent with all the distros.

  • Add verbose to the CI logs. [Carlos Camacho]

    This commit adds more verbosing to the CI outputs.

  • Fix internal strings. [Carlos Camacho]

    This commit fixes some internal CI links and content.

  • Include disable disruptive. [Carlos Camacho]

    This commit enables the disruptive mode in the subctl verify on demand.

  • Reduce timeouts. [Carlos Camacho]

    This commit reduces the timeouts when testing submariner.

CI

  • Call the get issue method. [Carlos Camacho]

    This commit calls correctly the get issue method when recording the job result.

  • Include repo name in periodic jobs. [Carlos Camacho]

    This commit includes the repo name in the periodic jobs build.

  • Add comment per job execution. [Carlos Camacho]

    On every force-push we lose the CI information from previous executions this commit includes a comment once each job finish.

  • Add var to ignore validation checks. [Glenn Marcy]

  • Make jobs run periodically. [Carlos Camacho]

    This commit allows to run the GitHub jobs periodically to have a better visibility if something gets updated.

  • Remove periodic job check. [Carlos Camacho]

    This commit removes the job check in the periodic pipeline so we test all the jobs at once.

  • Move branch check inside PR. [Carlos Camacho]

    This commit moves the PR branch check in the PR conditional.

  • Make sure ansible is 3.4.0. [Carlos Camacho]

    This is the latest version we support before moving forward to Ansible 4.

  • Minor improvements. [Carlos Camacho]

    This commit includes some minor improvements in the CI workflow.

  • Fail when the playbooks fails. [Carlos Camacho]

    This commit makes the CI job to fail when the Ansible playbook fails.

  • Reduce scripts duplication. [Carlos Camacho]

    This commit simplifies the scripts checking the ansible semantics that is enforced.

  • Enforce the executable usage in shell. [Carlos Camacho]

    This commit enforces the usage of the bash interpreter when calling the shell module.

  • Fix job id index. [Carlos Camacho]

    This commit fixes a nit in the job id rendering,

  • Do not update the .md job page. [Carlos Camacho]

    This commit revert adding the job dates in the GItHub job page, this is because then after every job execution the page will be re-rendered creating continous pull requests.

  • Include date in jobs. [Carlos Camacho]

    This commit includes the date information in the job status pages.

  • Run 4 jobs instead of 3. [Carlos Camacho]

    This commit increases the numbers of running job from 3 to 4.

  • Add extra information to the CI job page. [Carlos Camacho]

    This commit adds additional information to the deployment job page.

  • Record relevant files. [Carlos Camacho]

    This commit allows to record relevant files in the CI job execution.

  • Upload raw logs. [Carlos Camacho]

    This commit uploads the raw logs for the jobs.

  • Allow replace empty url. [Carlos Camacho]

    This commit allow replacing empty urls for the main CI jobs page.

  • Allow empty ref in main link. [Carlos Camacho]

    This commit enables an empty href replacement with the main jobs URL.

  • Fix text replacements. [Carlos Camacho]

    This commit updates an agressive regex replacement.

  • Move to KUBEINIT_ANSIBLE_VERBOSITY. [Carlos Camacho]

    This commit uses KUBEINIT_ANSIBLE_VERBOSITY as the variable to determine the verbose level in kubeinit when running the CI scripts.

  • Log to server IP. [Carlos Camacho]

    This commit makes ara to log in the server IP instead of localhost.

  • Fix regex. [Carlos Camacho]

    This commit fixes a regex error in the job result about page.

  • Reorg CI files. [Carlos Camacho]

    This commit organizes better the CI scripts and adds an option to test a set of random distros from the allowed scenarios.

  • Run ARA from a podman container. [Carlos Camacho]

    Currently ARA runs in a sqlite DB, due to the size of the playbooks we are starting to have locks blocking rendering the results.

  • Minor fixes. [Carlos Camacho]

    This commit adds some minor improvements to the CI.

  • Balance CI cluster load. [Carlos Camacho]

    This commit balances the nodes in the 3 nodes cluster so it have enough resources.

  • Re-build periodic_jobs.md. [kubeinit-bot]

  • Allow 0 computes deployment. [Carlos Camacho]

    This commit adjusts the regex to allow 0 compute deployments.

  • Allow run specific labels in periodic jobs. [Carlos Camacho]

    This commit allows to pass jobs labels to the periodic jobs.

  • Centralize CI files. [Carlos Camacho]

    This commit centralices the CI files into the ci folder.

  • Print the inventory to be deployed. [Carlos Camacho]

    This commit prints the inventory file before deploying in CI.

  • Re-build periodic_jobs.md. [kubeinit-bot]

  • Reduce the amount of jobs. [Carlos Camacho]

    This commit reduces the amount of jobs available in the periodic table.

  • Re-build periodic_jobs.md. [kubeinit-bot]

  • Allow splitting the period job per distro. [Carlos Camacho]

    This commit allows to split the periodic job per distro.

  • Re-build periodic_jobs.md. [kubeinit-bot]

  • Add label info to periodic jobs. [Carlos Camacho]

    This commit adds some context information for the labels used in the CI for checking PRs.

  • Re-build periodic_jobs.md. [kubeinit-bot]

  • Make consistent the CI jobs list. [Carlos Camacho]

    This commit aligns the periodic CI jobs with the jobs supported for testing the PRs.

  • Re-build periodic_jobs.md. [kubeinit-bot]

  • Minor changes. [Carlos Camacho]

    This commit includes some minor cosmetic changes to the periodic jobs status page.

  • Re-build periodic_jobs.md. [kubeinit-bot]

  • Fix lines spaces. [Carlos Camacho]

    This commit fixes the periodic job status page newlines.

  • Remove extra lines and update commit message. [Carlos Camacho]

    This commit updates the commit title and removes some unneeded extra lines in the jinja template.

  • Re-build periodic_jobs.md. [kubeinit-bot]

  • Include container services in CI. [Carlos Camacho]

    This commit enables the containerized services deployment in the CI.

  • Do not stop if tag does not match. [Carlos Camacho]

    This commit enables to keep executing the periodic job when a label does not match the validation regexp.

  • Fix nit. [Carlos Camacho]

    This commit fixes a nit in the periodic job page.

  • Build table from dictionary. [Carlos Camacho]

    This commit builds the CI periodic jobs table from a dictionary.

  • Adjust CI jobs names. [Carlos Camacho]

    This commit adjust the result periodic job name to match the CDN content.

  • Adjust the periodic jobs output data. [Carlos Camacho]

    This commit makes consistent the naming for both the PR and Periodic jobs.

  • Refactor the CI code. [Carlos Camacho]

    This PR removes duplicated code and improves the CI use cases allowing to integrate multiple workers to the CI nodes pool.

  • Adjust periodic page results. [Carlos Camacho]

    This commit adjusts the periodic job page results, also updates the worker ci script.

  • Adjust packages for CentOS. [Carlos Camacho]

    The CI worker was using Fedora, now we also have CentOS 8.

    Also firewalld is enabled where is installed Fedora/CentOS/RHEL.

  • Move GA check to run as root. [Carlos Camacho]

    This commit changes the GitHub actions deployment to run as root. This allows to remove the added become tags in the collection.

  • Run from a container as root. [Carlos Camacho]

    This commit makes explicit running the automation as root from a container.

  • Include the distro deploy badge in the readme. [Carlos Camacho]

    This commit includes the distro_test job result after every push in the main project’s readme.

  • Use hostname IP instead of localhost. [Carlos Camacho]

    This commit updates the CI install script to use the host IP instead of localhost to reference nyctea.

  • Run deployment from container. [Carlos Camacho]

    This commit adds running the playbook from a container so we test the build and reqs. install.

Documentation

  • Update clean tasks. [Carlos Camacho]

    This commit updates the way to clean up the hypervisors.

  • Include building and installing the collection. [Carlos Camacho]

    This commit includes information about how to build and install the collection.

  • Make sure width is complete. [Carlos Camacho]

    This commit makes the width of the page used completely.

  • Use always png on plantuml. [Carlos Camacho]

    PNG files always look better on web, so let’s use that extension by default.

  • Include end-to-end workflow. [Carlos Camacho]

    This commit adds information about how the CI runs, and includes a mechanism to autorender plantuml diagrams directly.

  • Include a brief usage information. [Carlos Camacho]

    This commit includes a brief usage information once the deployment is finished.

  • Include all_nodes and fix the task path for cleaning. [Carlos Camacho]

    This commit fixes the documentation about how to clean the environment.

Features

  • Release 2.0.0. [Carlos Camacho]

    This commit releases a new version of Kubeinit including a major refactor and architectural changes.

    Thanks to all Kubeinit’s contributors!!!

  • Convert to FQCN. [Carlos Camacho]

    This commit convert all the roles calls to their corresponding fully qualified collection name.

  • Cleanup before new function for bastion and ovn-central hosts. [Glenn Marcy]

    This commit cleans up a number of areas to provide consistency and uniformity across all the roles where some roles used different conventions than others for the same patterns.

  • Execute GA tests until validations complete. [Carlos Camacho]

    This commit allows the GA test job to be executed until the validations playbook is executed.

  • Reuse ovn job as multinode. [Carlos Camacho]

    This commit uses the old OVN job to be multinode.

  • Additional cleanup and minor changes. [Glenn Marcy]

    This commit delivers incremental updates toward the next release. Changes include: - Improve the support for –start-at-task and added kubeinit_stop_after_task var. - Rename playbook tasks for easier use with start from and stop after tasks. - Use include_role and include_tasks consistently within and between roles. - Update centos tasks to work with firewalld enabled. - Move configure common into deploy guests. - Change create cloud user to be optional. - Use platform defaults for ipv6 instead of disabling it.

  • Rename files for consistency. [Glenn Marcy]

  • Include a distro deployment in GA. [Carlos Camacho]

    This commit try to run a partial distro eployment in github actions.

  • Cleanup use of convenience facts. [Glenn Marcy]

    This commit defines some new convenience facts for performing some of the more common tests in when expressions. Other changes include simplifying the collection of hostvars and facts to be within the same (main) play in the playbook to eventually enable the ability to run –start-from-task to skip work in the main play that does not need to be repeated.

  • Move ovn tasks from prepare to libvirt. [Glenn Marcy]

  • Rename OVN 10_cleanup.yml to 10_ovn_cleanup.yml. [Glenn Marcy]

  • Add minimal runtime.yml for the Ansible collection. [Carlos Camacho]

    This commit adds a new requirement to publish in Ansible Galaxy.

    This commit also fixes the resolv files for the failing distros.

  • Include KID peridoc jobs. [Carlos Camacho]

    This commit includes the KID periodic jobs.

  • Include initial KID automation. [Carlos Camacho]

    This commit includes the first milestone to create a truly FOSS k8s distribution.

  • Reorganize the prepare_services tasks of each distro into kubeinit_services role. [Glenn Marcy]

    This commit (and the previous two containing simple deletes and renames) combines all of the prepare_services tasks across all the distros into a common path located in the kubeinit_services role. Other changes include moving the OCP release level from 4.7.1 to 4.7.18 and updating the RHCOS release from 4.6.1 to 4.7.13 to match.

  • Combine all prepare_services.yml into kubeinit_services role. [Glenn Marcy]

  • Unify name of configure_service_nodes.yml for all distros. [Glenn Marcy]

  • Add dnsmasq role to provide dhcp service. [Glenn Marcy]

    This commit adds support for a new kubeinit_dnsmasq role which will provide dhcp service for the cluster provisioning network. Other changes include: - Added environment vars to set OCP params - Moved services containers startup to common path - Updated flow of coreos downloads into okd paths - Updated OKD version to the latest 4.7 release

  • Cleanup templates. [Carlos Camacho]

    This commit adds some missing spaces in variables that breaks lint and splits the CDK bootstrap command for better debugging. It also adds the hostname DHCP option to the guests logical port.

  • Bump collections versions. [Carlos Camacho]

    This commit updates the collections versions used in the project.

  • Add support for service node in container to okd. [Glenn Marcy]

    This commit allows for the service node in the inventory to be assigned type=container and a podman pod and containers will replace the guest vm for the service node. Numerous other fixes and reorgs as well, including the creation of new tasks to consolidate the creation of credentials used to secure services.

  • Include node names validation and docker login from variable and file. [Carlos Camacho]

    This commit enables a validation to verify nodes have the correct name, also we allow to login to the docker registry using the password in a file or a variable.

  • Improve the naming convention for the cluster nodes. [Carlos Camacho]

    Based in this discussion[1] the default naming convention for the nodes is changed to allow a more inclusive language.

    [1]: https://github.com/kubernetes/community/tree/master/wg-naming/recommendations

  • Move OVN setup to the prepare role. [Carlos Camacho]

    This commit moves the OVN tasks to the prepare role, this is because the OVN setup is not dependant on libvirt.

  • Cleanup apache and registry roles. [Glenn Marcy]

    This commit separates the apache service from the html data the service provides access to. This will be stored in a new html data podman volume. All of the distro specific registry tasks have be moved into their respective distro roles and the remaining tasks have been collapsed back into a single main.yml file. Several of the files included but not used for future function have been removed to avoid upkeep and confusion.

  • Separate services deployment from cluster deployment. [Glenn Marcy]

    This commit moves the services deployment of each distro from the distro main into a new prepare_services file. Some minor cleanup items as well.

  • New CI job based on containers. [Carlos Camacho]

    This commit pushes a new job based on launching the deployment command from a container.

  • Push CI logs to CDN. [Carlos Camacho]

    This commit improves the CI logging by uploading the results to a CDN.

  • Include upload logs to CDN. [Carlos Camacho]

    This commit adds the hability to upload the CI logs to GC instead of pushing them to GH.

  • Normalize inventory groups and cleanup. [Glenn Marcy]

    This commit remove the distro prefix from the group names in the inventory files so that the names are consistent and are common across distros. Additional cleanup to refactor tasks like systemd user services to be shared across service roles, moving certificate info to common config and moving tasks to check that nodes are up into the tasks which create them.

  • Allow two machines per OVN deployment. [Carlos Camacho]

    This commit changes the default nyctea host by nyteaa (note the extra a) which allows to deploy the OVN scenario in a different set of nodes.

  • Include a multi HV deployment. [Carlos Camacho]

    This commits adds a multi HV deployment in the CI jobs.

  • Improve the task flow on multi-hypervisor clusters. [Glenn Marcy]

    This commit reorganizes many of the hypervisor tasks so that they can be run in parallel on multiple hypervisors. Other minor cleanup preparing for future deliverables.

  • Continue with minor cleanup. [Glenn Marcy]

    This commit includes mostly minor cleanup for consistency, highlights are splitting up some of the prepare to be called from different plays in the playbook and improvements to the nexus role to get it closer to and operational state.

  • Add new services role, cleanup several areas of the code. [Glenn Marcy]

    This commit adds a new kubeinit_services role which will eventually be used to replace the current services virtual machine with podman services pods. Other changes include: - removal of all ansible tags left over from early prototyping - removal of all external interface code, which has been replaced by a new

    create-external-ingress script

    • consolidation of all podman login checks into a new prepare_podman step

    • other smaller miscellaneous changes

  • Move more common facts to prepare and use them in roles. [Glenn Marcy]

    This commit add more consolidation of facts into the prepare role so that the other roles can depend on that information being available to them later.

  • Sleep for x seconds before the subctl verify. [Carlos Camacho]

    The CI triggers the subctl verify command just after the cluster is deployed. Let’s give some time to the cluster to converge prior the test.

  • Initial prepare role reorg and cleanup. [Glenn Marcy]

    This commit starts to pull the initial prepare phase tasks together to provide more consistency in how facts are defined and made available for the roles that depend on those facts.

  • Change all distros to share the same playbook. [Glenn Marcy]

    This commit replaces all current distro specific playbooks with symbolic links to a new common playbook. Further refactoring is expected as we pivot to a common flow that they all would share, with minor changes as needed per distro, rather than the current case where each distro has it’s only copy of the entire deployment which is for the most part the same for all distros. Also fixed a broken symlink for the eks host group vars.

  • Reorganize and cleanup service nodes. [Glenn Marcy]

    This commit makes some initial changes in preparation for future changes to how services are handled. Now that services are all in containers the process of moving those containers from a service virtual machine into container pods can begin.

  • Allow deploying released versions. [Carlos Camacho]

    This commit allows to deploy submariner released versions.

  • Make dynamic the docker version in rke. [Carlos Camacho]

    This commit allows to pin an specific docker version in the RKE cluster.

  • Bump k8s version to 1.20. [Carlos Camacho]

    This commit updates k8s from 1.18 to 1.20 and configures extra variables for choosing the distro and the k8s version to be deployed.

  • Update OKD to latest 4.6. [Carlos Camacho]

    This commit updates OKD to the latest version prior 4.7

  • Include submariner in the periodic jobs. [Carlos Camacho]

    This commit includes submariner in the periodic jobs.

  • Include a prepare role. [Carlos Camacho]

    This commit includes a prepare role agnostic from the distribution or the infrastructure provider to be deployed.

  • Configure nexus. [Carlos Camacho]

    This commit configures nexus to replace the container registry.

  • Include nexus container registry. [Carlos Camacho]

    This commit adds the skeleton templates to deploy nexus.

  • Run haproxy service from a container. [Glenn Marcy]

    This commit runs the haproxy server from a container instead of installing it into the service node virtual machine.

  • Run local registry container with podman instead of docker. [Glenn Marcy]

    This commit changes the local registry service from running in a container with docker to using podman to run the container.

  • Run bind9 DNS service from a container. [Glenn Marcy]

    This commit runs the bind9 server from a container instead of installing it into the service node virtual machine.

  • Run apache http service from a container. [Glenn Marcy]

    This commit runs the http server from a container instead of installing it into the service node virtual machine.

  • Update service node from centos 8.3.2011 to 8-stream. [Glenn Marcy]

    This commit will switch the VM we create for the service node from CentOS 8.3.2011 to CentOS Stream.

Fixes

  • Add new line waiting for converge. [Carlos Camacho]

    This commit adds a new line so we wait correctly for the cluster to converge.

  • Expand guest vm os name in task filename. [Glenn Marcy]

  • Make tox linters happy. [Glenn Marcy]

  • Move Ubuntu image to latest. [Carlos Camacho]

    This commit moves forward the Ubuntu image used to deploy RKE.

  • Set the ansible shell to bash to support pipefail. [naden]

  • Increase timeout for CDK deployments. [Carlos Camacho]

    This commit increases the timeout when waiting for the cluster to converge, this is useful when deploying in old HW so the cluster will take more time to be healthy.

  • Make cluster changes based on firewalld status. [Carlos Camacho]

    We should not install or force firewalld status to configure the cluster, this commit check the firewalld status before executing the tasks.

  • Move tasks to gather hypervisor facts out of hypervisor_hosts play. [Glenn Marcy]

  • Firewalld not on Fedora. [Glenn Marcy]

  • Run the e2e test as the runner user. [Carlos Camacho]

    This commit makes the playbook to run as the runner user.

  • Adjust KID packages. [Carlos Camacho]

    This commit removes some packages not available anymore in Debian.

  • Cast kubeinit_controller_count to int. [Glenn Marcy]

  • Use k8s 1.2 in OKD 4.7. [Carlos Camacho]

    This commit adds the 1.20 repos for cri-o in OKD 4.7

  • Cleanup duplicated code. [Carlos Camacho]

    This commit removes the duplicated code added to the guest OS steps.

  • Merge duplicate code. [Carlos Camacho]

    This commit merges code that is specific to the guest OS and not to the distro.

  • Move distro check to guest os check. [Carlos Camacho]

    This commit moves the distro check to the guest OS check when installing services.

  • Update readme. [Carlos Camacho]

    This commit updates the readme file in the project.

  • Remove duplcicated call to 40_remove_bootstrap_node.yml. [Carlos Camacho]

    Now we need to fix the etcd cluster before finishing the bootstrap to complete. This commit removes the extra code.

  • Apply scale spec changes before converge. [Carlos Camacho]

    This commit makes the scale down adjustments before the cluster to converge.

  • Kubeinit registry should be enabled for rke distro. [Glenn Marcy]

  • Remove all podman remote connections from localhost. [Glenn Marcy]

  • Cleanup podman connections in the CI. [Carlos Camacho]

    This commit makes sure the podman connections are cleaned in every run.

  • Do not regenerate keys if they exist. [Carlos Camacho]

    This commit disables regenerating the hosts keys if they exist.

  • Force reinstall packages. [Carlos Camacho]

    This commit makes sure the packages are reinstalled when configuring OVS/OVN.

  • Make sure all OVS files are removed. [Carlos Camacho]

    This commit prunes all the OVS/OVN files.

  • Remove extra quotes from eks docker config.json. [Glenn Marcy]

  • Add Fedora disto check to CentOS and RedHat. [Glenn Marcy]

  • Wait for connection in credentials podman connection. [Glenn Marcy]

  • Simplified issue template. [Naden]

  • Standardised case name. [Naden]

  • Organize submariner playbooks. [Carlos Camacho]

    This commit aligns the submariner deployment playbook with the distros deployment playbooks.

  • Set ansible shell to bash as needed for pipefail. [Naden]

  • Start OVS/OVN services in Ubuntu HV. [Carlos Camacho]

    This commit starts the OVS/OVN services when using Ubuntu/Debian hosts.

  • Make sure PK has the correct perms. [Carlos Camacho]

    This commit makes sure the EKS distro has the correct perms in the OK before referencing it.

  • Make sure PK has the correct perms. [Carlos Camacho]

    This commit makes sure the EKS distro has the correct perms in the OK before referencing it.

  • Remove s from etcd cluster check. [Carlos Camacho]

    This commit fixes the check to verify the etcd cluster is up in CDK.

  • Remove rm command. [Carlos Camacho]

    The first time we install the node the sqlite DB does not exists.

  • Install ansible from dnf. [Carlos Camacho]

    This commit installs ansible from dnf in the dockerfile and makes sure we test the collections versions in each PR.

  • Remove ansible install from PIP. [Carlos Camacho]

    This commit uses the Ansible version from the package repository instead of PIP.

  • Check whether the cluster is healthy. [Carlos Camacho]

    This commit unblocks the CI and only check that the cluster is healthy.

  • Re-enabled cdk deployment. [Glenn Marcy]

    This commit restores the cdk support to an operational state. There are some configurations that still have some issues, but the cluster deployments show function again and the cluster issues can be investigated further.

  • Add fixes for rke distro issues. [Glenn Marcy]

    This commit addresses the issues with rke (and eks) created when the prepare_credentials changes went in.

  • Allow use distro in veth interface. [Carlos Camacho]

    We need to be able to deploy multiple clusters in the same OVN network. This commit allows to deploy two different clusters (different distros) in the same net.

  • Make sure the apache folder exists before deploying the container. [Carlos Camacho]

    This commit makes sure the apache folder exists before creating the apache containter.

  • Fix docs linter. [Carlos Camacho]

    This commit fixes the docs linter.

  • Retry when pods/containers fail to be created. [Carlos Camacho]

    When pulling from external sources, the pods/containers creation might fail.

    This commit adds a retry for such scenarios.

  • Cleanup prepare_podman tasks. [Glenn Marcy]

    This commit removes the need for creating new files and simplifies the flow through the prepare podman tasks. Additional minor cleanup changes to reduce complexity of future deliveries.

  • Add nolog. [Carlos Camacho]

    This commit add no_log to the registry password management tasks.

  • Making tox linters happy again. [Glenn Marcy]

  • Rework changes so that ovn network installs consistently. [Glenn Marcy]

    This commit addresses the following issues: - Move all hypervisor preparation to prepare_hypervisor.yml - Move installation of package dependencies from libvirt role

    to the prepare role.

    • Undefine VMs and remove storage for all VMs that were found.

    • Use first 3 characters from node names instead of 2 since both controller and compute start with co.

    • Change docker password environment and ansible variable value from the actual password to the path of a file containing the password.

  • Adjust workflows to point to main. [Carlos Camacho]

    This commit fixes the job default branch for the GH actions pointing to master.

  • Do not depend on the language output of df. [Carlos Camacho]

    This commit removes the dependency with the localization of the ‘df’ command, in English it returns ‘Avail’ and in Spanish ‘Disp’.

  • Do not use hardwire service IP. [Carlos Camacho]

    This commit removes a hardwired IP in the nexus service.

  • Remove the regex dependency for inventory names. [Carlos Camacho]

    Historically we searched for the guests names based in a regex, currently we have them all grouped correctly without any distribution limitation.

    This commit enables users to use any name they want per guest group (worker, master, service, and bootstrap nodes).

  • Make sure VMs are destroyed before undefining. [Carlos Camacho]

    This commit makes sure all the inventory guests are destroyed before undefining them.

  • Make the ubuntu distro as a variable. [Carlos Camacho]

    This commit enables the Ubuntu release as a variable.

  • Adjust names to have consistent case. [Naden]

  • Updated minimum version of libvirt. [Naden]

  • Remove Python 2 dependencies. [Naden]

  • Use /bin/bash when using set -o pipefail. [Naden]

  • Hardcoding of cluster name. [Naden]

  • Update community.libvirt. [R. Mathieu Landvreugd]

    This resolves #313

  • Update readme. [Carlos Camacho]

    This commit simplifies a little the readme content.

  • Update README.md. [iqre8]

    Added some of the requirements to the Readme.

  • Update README.md. [iqre8]

    Added a check to verify that the requirements are okay.

  • Comment bastions tasks. [Carlos Camacho]

    This commit comments some tasks related to using services in the bastion host, this feature is not fully implemented yet.

  • Changes to make linters happy. [Glenn Marcy]

  • Fix new lint issues. [Carlos Camacho]

    With lint updated there are some lint checks to fix.

  • Update links order. [Carlos Camacho]

    This commit sort the replace in the CI report build script.

  • Update CI links. [Carlos Camacho]

    This commit fixes the CI “about” description.

  • Add iproute2 install to Dockerfile. [Glenn Marcy]

    This commit adds iproute2 to the packages being installed in the container image. This provides the ‘ip’ command that ansible depends on to gather network facts.

  • Update periodic job to the correct folder. [Carlos Camacho]

    This commit fixes a path for reaching the periodic jobs.

  • Update README. [Carlos Camacho]

    This commit updates the content of the readme file to point to the new CI results location.

  • Pull from docker. [Carlos Camacho]

    By default we use python:slim to deploy the kubeinit container. This commit makes explicit where to pull from.

  • Allow fetch EKS images from distro.eks directly. [Carlos Camacho]

    This commit fixes the step that fetch the images, before the images were in a single text file and now we fetch them directly from the EKS registry.

  • Add pin to ansible <4. [Carlos Camacho]

    This commit excludes ansible 4 from the CI.

  • Move OVN scenario from OKD to vanilla K8s. [Carlos Camacho]

    The OKD deployment takes too much resources, this commit moves the OVN job to a lighter scenario.

  • Pull directly from CDN. [Carlos Camacho]

    This commit makes the job to pull directly the images from the CDN.

  • Enable 4 hypervisors. [Carlos Camacho]

    The OVN job fails because there is not enough capacity this commit, enables 4 machines for the OVN jobs.

  • Change the ovn periodic job tag. [Carlos Camacho]

    This commit fixes the tag in the OVN job for the periodic run.

  • Make jobs to force use latest ubuntu and python 3.8. [Carlos Camacho]

    This commit adjust the GitHub jobs to use the same status check (build 3.8).

  • Delete other blank line. [Glenn Marcy]

  • Remove extra blank line. [Glenn Marcy]

  • Change state from stopped to created for service pod. [Glenn Marcy]

  • Remove extra spaces. [Carlos Camacho]

    This commit removes an extra expace when executing subctl verify.

  • Adjust CI scripts. [Carlos Camacho]

    This commit adjusts the CI scripts as there are two worker nodes by default in the inventory file.

  • Increase the timeout for checking the connection. [Carlos Camacho]

    This commit increases the retry number for checking that the submariner connection is up and running.

  • Pass distro to ansible-playbook-grapher. [Glenn Marcy]

    This commit addresses the new kubeinit_inventory_cluster_distro reference in the playbook by defining it for each distro on the command line.

  • Add a second worker to each distro inventory. [Glenn Marcy]

    This commit adds a second worker node so that we can run a cluster version update when a newer release is available.

  • Change haprocy stats port from 9090 to 9000. [Glenn Marcy]

    This commit moves the stats port so that it does not conflict with the cockpit port.

  • Change subctl–linux-amd64 with subctl. [Carlos Camacho]

    This commit changes subctl–linux-amd64 with subctl–linux-amd64 because is the new name for this binary.

  • Remove the ignore errors in submariner. [Carlos Camacho]

    This commit removes some workarounds for creating the submariner operator images.

  • Adjust submariner labels based on the workers number. [Carlos Camacho]

    This commit adds the correct nodes labels for the submariner operator to work in HA when its possible.

  • Nit removal. [Carlos Camacho]

    This commit fixes the YAML lint check.

  • Do not upgrade Docker. [Carlos Camacho]

    This commit removes the docker upgrade command, we need to pin a specific version.

  • Nit fix in the ci script. [Carlos Camacho]

    This commit fixes a nit in the ci scripts.

  • Include registry auth in .docker. [Carlos Camacho]

    It is still required to have the authentication details in the .docker folder defore pushing to the local registry.

  • Adjust podman login in secondary cluster. [Carlos Camacho]

    This commit fixes the podman login to configure the secondary submariner cluster.

  • Addsubmariner periodic to readme. [Carlos Camacho]

    This commit adds the periodic jobs results to the project’s readme.

  • Adjust submariner make steps. [Carlos Camacho]

    Currently there is a bug when using the make module as the submariner make file has some errors captured by Ansible.

  • Include pending submariner config. [Carlos Camacho]

    This commit adds the pending config details for submariner.

  • Make submariner playbooks aligned with the other roles. [Carlos Camacho]

    This commit aligns submariner role to the pattern used in all the other roles.

  • Build subctl in the docker cluster. [Carlos Camacho]

    This commit fixes the build of submariner, now this is executed in the RKE cluster and syncronized to the OKD cluster (docker -> podman).

  • Replace wrong ci strings. [Carlos Camacho]

    This commit fixes a nit in the ci scripts that causes k8s periodic job to run cdk.

  • Remove docker from submariner. [Carlos Camacho]

    This commit removes docker commands from the submariner role.

  • Move to shell and sort parameters. [Carlos Camacho]

    This commit moves to shell the podman login commands as the dont work correctly with different OS distros.

  • Move docker pass to each role. [Carlos Camacho]

    This commit moves the docker auth file to each role using it.

  • Login to docker.io from text file auth. [Carlos Camacho]

    This commit changes the docker.io auth from CLI to use a text file.

  • Move shell to command. [Carlos Camacho]

    This commit moves shell to command.

  • Securize podman login. [Carlos Camacho]

    This patch fixes showing the podman login password in the Ansible logs.

  • Allow requests to wait 1600s. [Carlos Camacho]

    This commit increases the timeout for the NFS resources.

  • Add a timeout to the imageregistry provider commands. [Carlos Camacho]

    This adds a higher timeout when pathing the imageregistry operator.

  • Remove docker and create haproxy files. [Carlos Camacho]

    This commit removes the docker bits in the registry role and some missing requisites for haproxy to be configured in Ubuntu.

  • Lint errors. [Glenn Marcy]

    Commit to fix lint errors.

  • Add missing cluster name to several places generating cluster FQDNs. [Glenn Marcy]

    This commit fixes several locations where the FQDN for a cluster node was missing the cluster name.

  • Enforce detach parameters. [Carlos Camacho]

    This commit enfoces the parameters when calling the detach script.

  • Enable or disable master schedulable depending on worker nodes. [Carlos Camacho]

    This commit disables or enables the master nodes as schedulable depending only if there are or not worker nodes.

  • Wait for 60 retries. [Carlos Camacho]

    This commit increases the retries waiting for the NFS resources to start.

  • Add ignore_errors when waiting for nfs resources to start. [Carlos Camacho]

    This commit adds an ignore_errors when waiting for the NFS resources to start.

  • Enable mastersSchedulable if no workers. [Carlos Camacho]

    This commit enables mastersSchedulable when there are no worker nodes in the cluster.

Performance

  • Optimize dockerfile. [Raghavendra Talur]

    By moving the the COPY directive to a lower position, we can save rebuilds of the container when we are actively working on the code.

    As the packages are installed before the copy directive, the base container needs to be built only once.

Refactor

  • Remove unused, rename consistency. [Glenn Marcy]

  • Use cluster name in all named cluster resources. [Glenn Marcy]

    This commit adds updates to the overall naming scene for cluster nodes so that we could support two clusters, either of the same or different distros, on the same hypervisor(s) without them conflicting with one another. This is still a work in progress and other changes will be needed before that goal can be achieved. The main change at this time is to remove the cluster distro prefix from inventories so that we can generate guest names with the cluster name as a prefix.

    Other changes include: - Added a section to the inventory describing the behavior of the bastion_host

    and delivered initial support for creating a bastion external to the cluster.

    • Replaced [bootstrap_node] with [extra_nodes] to generalize the idea of distro specific nodes, and added juju-controller to the CDK distro as an extra node.

    • Changed playbook sequence to separate out the network creation and cloud image download tasks and folded the distro specific service configuration into the prepare_cluster task.

    • All services now build local container images for their service configuration.

    • Cluster services now share configuration in services data volume mounted on /var/kubeinit in each container.

    • Updated distros to consolidate tasks into single prepare and deploy cluster flow.

    • Updated CDK distro to latest in charmstore, download standalone command from launchpad eliminating dependency on snap in the provision container, moved the juju-controller into an extra guest node that only performs that function.

    • Removed validation that cluster nodes need to match a specic pattern, more work in CI needed so that cluster node names can be arbitrary.

    • Changed veth0 names for guest vms to use ip4_hex representation.

    • Streamlined the flow through the kubeinit_services role tasks.

  • Move cleanup tasks before run validations. [Glenn Marcy]

    This commit moves the cleanup tasks to a new spot after preparing the environment and before running validations. Those cleanup tasks have also been optimized to run in parallel when the cluster is being deployed to multiple hypervisors. OVN cleanup has also been adjusted to be more of a surgical operation, touching as little as necessary, rather than the scorched earth approach used previously.

    Other changes include adding kubeinit_cluster_fqdn as a shorter substitute for the cluster_name.cluster_domain, replacing append to authorized_keys shell commands with the authorized_key ansible task, streamlining the cloud image downloads and applying package updates to those images once for each copy rather than for each guest vm created from those images, collecting more information during initial fact gathering rather than spreading it out across many different roles, and many other minor improvements.

  • Move post-deployment tasks to a new play task after deployment. [Glenn Marcy]

    This commit creates a new task-post-deployment task to the end of the cluster install play. Other changes include updating the EKS kubernetes version to 1.21.4 and removing nfs from the pre-deployment services since it done in the post-deployment phase.

  • Rename or remove post deployment task files. [Glenn Marcy]

v1.0.2 - Release date: 2021-03-19

Chore

  • Release 1.0.2. [Carlos Camacho]

    This commit releases KubeInit 1.0.2.

Features

  • Allow to deploy OpenShift. [Carlos Camacho]

    This commit allows to deploy OpenShift from the automation used to deploy OKD.

Fixes

  • Wait for image registry resource exists. [Carlos Camacho]

    This commit fixes a race condition in the CI, we try to patch resources that might not exists.

  • Adjust removing the bootstrap node in single master configs. [Carlos Camacho]

    This commit adjust the step of removing the bootstrap node in single master configurations.

  • Disable NFS if not OKD. [Carlos Camacho]

    This commit disables NFS until the commands changes from oc to kubectl.

  • Move ansible-lint to args. [Carlos Camacho]

    This commit fixes the way we call ansible-lint.

  • Update tox.ini. [Glenn Marcy]

    This commit replaces the -name with -wholename for the roles yaml files

  • Update nfs role to latest k8s sig practice. [Glenn Marcy]

    This commit refreshes the way we generate the yaml artifacts for managed-nfs-storage and also now uses that storage class to allocate the volume for the image registry.

  • Include dns server in static ip config. [Carlos Camacho]

    This commit includes the DNS servers when configuring the external interface bridge.

  • Enable kiextbr0 interface after configuring the static IP. [Carlos Camacho]

    This commit enables the interface just afet the manual IP is configured.

  • Include error for non supported distros. [Carlos Camacho]

    This commit checks that the detach script fails if they hypervisors are Ubuntu or Debian as they are not yet supported.

  • Include NetworkManager OVS package. [Carlos Camacho]

    This commit adds the NetworkManager-ovs in CentOS.

  • Adjust treeinfo for RHCOS. [Carlos Camacho]

    This commit adds a correct treeinfo file to deploy rhcos images.

  • Check if the distro is Centos or Fedora in the detach script. [Carlos Camacho]

    This commit validates that the detach script install the correct packages when creating the OVS bridge.

  • Organize pending libvirt files. [Carlos Camacho]

    This commit finishes to organize the pending files fomr the libvirt role.

  • Backup install manifests. [Carlos Camacho]

    This commit store the install manifests before rendering the ignition files for having a better debugging.

  • Adjust tasks files names. [Carlos Camacho]

    This commit adjust the k8s distros roles file names to be consistent about how they run.

v1.0.1 - Release date: 2021-03-10

Chore

  • Release 1.0.1. [Carlos Camacho]

    This commit releases Kubeinit 1.0.1 with full OVN support for multinode cluster deployments.

  • Mirror to GitLab. [Carlos Camacho]

    This commit after every merge, will push the latest version to GitLab.

  • Update version of fcos. [sean-m-sullivan]

Documentation

  • Add the cleanup section. [Carlos Camacho]

    This commit adds a playbook to clean the environment in the documentation.

Features

  • Render detach script in the external interface host. [Carlos Camacho]

    This commit renders the detach script in the host that needs to have external access to the service guest.

  • Allow deploying the service node in any chassis. [Carlos Camacho]

    This commit allows to deploy the service machine with the exterenal interface in any of the chassis.

  • Replace ssh config.kubeinit file with ssh -o ProxyCommand. [Glenn Marcy]

    This commit removes the creation (and cleanup) of an ssh config file and replaces it with an ssh ProxyCommand option when accessing the cluster nodes.

  • Collect all of the non-hypervisor nodes into all_nodes group. [Glenn Marcy]

    This commit adds a new all_nodes group to make it easier to iterate over that list and to prevent confusion when additional items are added to the all group after reading the inventory.

  • Add view to bind for public bridge network. [Glenn Marcy]

    This commit allows for hosts on the public bridge network to make dns requests that will resolve on the service node to internal addresses accessible to those hosts.

  • Add the external interface to OVN deployment. [Carlos Camacho]

    This commit connects the service external interface to the OVN network.

  • Split OVN nat rules. [Carlos Camacho]

    This commit splits the OVN iptables rules to allow adding the external interface details.

  • Validate physical cores per guest. [Carlos Camacho]

    This commit checks that per each physical core there can be up to 4 virtual cores.

  • Use source based routing in the service node. [Carlos Camacho]

    Now the service node has two interfaces if we require to have external access to the cluster resources. This commit implements the usage of Policy-Based-Routing Rules to ensure the traffic from one interface comes out using the same interface.

  • Include ci scripts. [Carlos Camacho]

    This commit includes the worker node prepare script for the GitLab runner and fixes the script to enslave the external access interface.

  • Include OVN clean tasks in the cleanup file. [Carlos Camacho]

    This PR includes the OVN cleaning tasks and install Python3 in the CentOS guests.

  • Split the cleanup tasks in a separate file. [Carlos Camacho]

    This PR makes easier to execute only the cleanup tasks.

  • Centralize health check in libvirt. [Carlos Camacho]

    This PR centralize all the checks that verify that the cluster nodes are up and running.

  • Add more timeout parameters. [Carlos Camacho]

    This PR adds some additional timeout parameters.

Fixes

  • Update when conditions for external bridge checks. [Glenn Marcy]

    This commit changes the conditions so that we only check for the correct status return from nmcli con show after we have checked the conditions which were used to run those commands.

  • Update how we iterate over validation maps. [Glenn Marcy]

    This commit changes the way we iterate over resources when we are checking them. Check that for each resource that we need that the hypervisor providing those has sufficient capacity.

  • Replace stricthostkeychecking with StrictHostKeyChecking. [Glenn Marcy]

    This commit updates all the hosts inventory files to use the same case convention as the rest of the project for ssh options.

  • Patch the external interface to the OVS bridge. [Carlos Camacho]

    This commit is the last step to have access to the external cluster interface. This patches both OVS bridges from the cluster network and the host physical interface.

  • Add enslaver helpers. [Carlos Camacho]

    This commir helps to enslave the physical interface.

  • Update ansible in the docs release job. [Carlos Camacho]

    This commit updates ansible in the job that publishes the docs.

  • Make sure we use latest ansible in CI. [Carlos Camacho]

    Because of https://github.com/ansible/ansible/pull/71824 we need to make sure we use the latest version of Ansible in the CI.

  • Move haproxy port to 9090 and disable ipv6. [Carlos Camacho]

    This commit shifts the default 9000 port to 9090 because it might conflict with the default cockpit port and disables ipv6 by default in the guests.

  • Parse correctly args. [Carlos Camacho]

    This commit parses correctly the arguments.

  • Split periodic job in multiple smaller jobs. [Carlos Camacho]

    This commit splits the periodic job into multiple jobs because it takes too much time to execute all the posible scenarios in a single run.

  • Wait for bootstrap to complete. [Carlos Camacho]

    This commit force the deployment to wait until the bootstrap step completes.

  • Detect the external interface. [Carlos Camacho]

    This commit replaces eno1 with the correct interface nem of the router gateway in the OVN deployment.

  • Run bridge check only in the external host. [Carlos Camacho]

    This PR checks that the external bridge is only created in the node with the service node.

  • Fetching all branches returns 1 if they already exists. [Carlos Camacho]

    This commit makes sure fetching the branches never returns 1.

  • Move GitLab mirror to sw release. [Carlos Camacho]

    This commit moves the repo sync to the correct place.

  • Fix ansible lint issues. [Carlos Camacho]

    This commit fixes some ansible-lint issues in the code.

  • Include ansible-lint checks again. [Carlos Camacho]

    This PR enables back the ansible-lint check that was failing in the past.

  • Cleanup and configure ssh proxy once and wait for guest. [Carlos Camacho]

    This PR makes sure we ssh proxy is configured once, also, cleaned once in the first hypervisor.

    Also makes sure each guest boots before continue, if we create multiple guests at the same time libvirt may crash.

  • Use local ssh config instead of proxy settings. [Carlos Camacho]

    This patch configures the SSH config file instead of the Ansible proxy settings, Ansible for some reason is not honoring them anymore.

  • Adjust inventory to honor the ssh proxy. [Carlos Camacho]

    This PR fixes a breakage in the way the collection connects to the guests. The previous approach is not honored by Ansible anymore so we can not connect to the guests. We now use ansible_ssh_extra_args instead of ansible_ssh_common_args.

  • Align OVN network parameters with inventory variables. [Carlos Camacho]

    This PR aligns the OVN network parameters with the values from the inventory files, currently they are hardwired.

  • Name check nodes correctly. [Carlos Camacho]

    This PR renames correctly a task that checks that nodes are ready.

  • Replace wait_for by wait_for_connection. [Carlos Camacho]

    Listening to port 22 do not guarantee that ansible is able to login so we can hit race conditions.

v1.0.0 - Release date: 2021-02-05

Chore

  • Release 1.0.0. [Carlos Camacho]

    This PR releases kubeinit 1.0.0 with mutiple features amongs them support for 5 kubernetes distributions, multicluster and multinode deployments.

  • Template updates and logo img. [Carlos Camacho]

    This patch updates some templates and logos.

Documentation

  • Update link. [Carlos Camacho]

    Change links to GH repo

Features

  • Make OVN available for multinode deployments. [Carlos Camacho]

    This PR makes available to deploy kubeinit in a multinode environment.

  • Add more OVN steps. [Carlos Camacho]

    This PR adds more steps for the OVN configuration NAT+DHCP

  • Add post OVN deployment steps. [Carlos Camacho]

    This patch adds a post deployment step for OVN.

  • Allow deployments using OVN. [Carlos Camacho]

    This patch allows to deploy Kubeinit using OVN.

  • Lint the fqcn playbooks. [Carlos Camacho]

    This patch checks that all tasks use fqcn

    Please enter the commit message for your changes. Lines starting

  • Convert to fqcn. [Carlos Camacho]

    This patch converts the roles content to fqcn

  • Use fqcn in skeleton and playbooks. [Carlos Camacho]

    This is the first iteration to use the fqcn in the project.

  • Make OVN parameters available from the role defaults. [Carlos Camacho]

    This patch adds the OVN configuration parameters available from the role defaults.

  • Include OVN configuration steps. [Carlos Camacho]

    This PR includes the steps for configuring OVN in a multi-HV environment.

  • Add more changes to support multiple hypervisors. [Carlos Camacho]

    This is anoter patch to support multiple HVs in any distro deployment.

  • Include initial support for multiple hypervisors. [Carlos Camacho]

    This is the first series of patches to add support for multiple hypervisors.

    This updates the inventory files and updates the disk space validation.

  • Include initial ui PoC. [Carlos Camacho]

    This patch reuse a PoC I had from the past.

Fixes

  • Allow not waiting for okd to converge. [Carlos Camacho]

    This includes a variable to wait or not until the cluster converges, mostly the autoupdate can take more than 1 hour to finish.

  • Allow bind to forward requests. [Carlos Camacho]

    This patch allows to forward requests between multiple clusters.

  • Include internal dns in CI deployments. [Carlos Camacho]

    This PR includes a missing parameter to update an internal DNS.

  • Do not enable OVN yet. [Carlos Camacho]

    OVN is no ready yet, so dont enable it.

  • Adjust OVN config deployment. [Carlos Camacho]

    Added some minor fixes for the OVN deployment.

  • Register correctly eks worker nodes. [Carlos Camacho]

    There is a wrong conditional breaking eks deployments with a single master node.

  • Make sure libvirtd is enabled. [Carlos Camacho]

    By default libvirtd is not enabled so the deployments might fail.

    Also add a failsafe path for libvirt default folder.

    And label the eks nodes at the end of the deployment.

  • Install docker everywhere in cdk. [Carlos Camacho]

    Execute the common steps in all the cdk nodes.

  • Remove unneeded tasks and tags. [Carlos Camacho]

    This patch removes a few unneeded tags and tasks.

  • Adjust playbook files to avoid duplicated steps. [Carlos Camacho]

    This PR fixes a duplication step when configuring the services nodes.

  • Adjust missing inventory files. [Carlos Camacho]

    We missed to comment the hypervisors in some distros, breaking the disk space validation.

  • Update variables. [Carlos Camacho]

    This patch updates some misc variables

  • Openshift sdk is not required. [Carlos Camacho]

    This patch removes the openshift requirement which is not necesary.

v0.6.5 - Release date: 2020-12-15

Chore

  • Keep ara version. [Carlos Camacho]

    Latest ara is faulty.

  • Update readme content. [Carlos Camacho]

    This patch simplifies the project’s readme file.

Features

  • Add simple agent skeleton. [Carlos Camacho]

    This patch adds a simple skeleton code for the agent

  • Trigger submariner jobs. [Carlos Camacho]

    This patch triggers submariner jobs and update its labels and status accordingly.

  • Deploy OKD 4.6. [Carlos Camacho]

    This patch bumps the default deployed version of OKD to 4.6

Fixes

  • Do not update logs link if cant upload to GitHub. [Carlos Camacho]

    This patch makes the jobs in GH to keep the original link if the file upload failed pushing the logs to GitHub.

  • Add workarounds for 1 master OKD cluster. [Carlos Camacho]

    There are some missing parameters that needs to be adjusted in OKD 4.6 to deploy single node clusters.

v0.6.4 - Release date: 2020-12-09

Chore

  • Release 0.6.4. [Carlos Camacho]

    This patch releases v0.6.4

Documentation

  • Fix link. [Carlos Camacho]

    Fix broken link

  • Remove unneeded notes. [Carlos Camacho]

    This patch removes some unneeded notes

Fixes

  • Fix template indentation. [Carlos Camacho]

    This patch fixes somw wrong identation in the NFS templates.

  • Replace okd by service regex. [Carlos Camacho]

    This patch changes a hardwired okd in the NFS templates for a regex.

    Do not merge this.

Refactor

  • Refines task clause naming and removes obsolete code. [Brendan Boyd]

  • Adds changed_when and when clauses to nfs provisioner. [Brendan Boyd]

  • Adds nfs storage class and moves nfs config to post deployment. [Brendan Boyd]

v0.6.3 - Release date: 2020-12-08

Chore

  • Release and update docs. [Carlos Camacho]

    This patch builds a new release and amends the documentation.

Features

  • Include eks as a new distro. [Carlos Camacho]

    The following patch allows the deployment of EKS-d

Fixes

  • Remove common.yml from the inventory grapher. [Carlos Camacho]

    This patch excludes common.yml from the docs graphing tooling.

  • Include pending variables. [Carlos Camacho]

    This patch adds some pending variables to configure EKS correctly.

  • Allow insecure registry with docker in OKD. [Carlos Camacho]

    This patch enables insecure registries in OKD when using with docker.

  • Allow insecure registry with docker in OKD. [Carlos Camacho]

    This patch enables insecure registries in OKD when using with docker.

v0.6.2 - Release date: 2020-12-04

Chore

  • Release 0.6.2. [Carlos Camacho]

    This patch releases 0.6.2 fix a major fix for the new podman version breaking all distros deployments.

  • Pre-deploy OKD 4.6. [Carlos Camacho]

    This patch configures the requirements to deploy OKD 4.6.

  • Include date in job name. [Carlos Camacho]

    This patch includes the date in the patch names.

  • Clean unneeded titles. [Carlos Camacho]

    This patch cleans up some unneeded titles in the roles.

  • Sync all ci scripts. [Carlos Camacho]

    This patch syncs both CI scripts

  • Docs fix. [Carlos Camacho]

    2 simple empty lines

  • Update readme. [Carlos Camacho]

    This patch updates the readme with the way to run kubeinit from a quay container and a docs update.

Documentation

  • Add readme as part of docs. [Carlos Camacho]

    This patch adds the readme file as part of the documentation.

Features

  • Include subctl verify as a new playbook. [Carlos Camacho]

    This patch adds an new playbook for running subctl verify so the CI logs are in a different section.

  • Include ara in the ci results. [Carlos Camacho]

    This path includes ara as part of the CI jobs execution

Fixes

  • Allow docker and podman in the local registry container. [Carlos Camacho]

    This patch allows choosing between docker or podman in the service machine when installing the local registry.

  • Merge CI logs in a single commit. [Carlos Camacho]

    WE had issues to push the CI logs with binary files, this patch fix that issue and commits only one change.

  • Pull from local registry explicitly. [Carlos Camacho]

    When deploying submariner the newly created container images need to be tagged and pointed to the local registry.

v0.6.1 - Release date: 2020-11-23

Chore

  • Add container image in quay. [Carlos Camacho]

    After each release we push a new tag to quay

  • Split code for better readability. [Carlos Camacho]

    This patch splits a few tasks for better readability.

  • Print PR inf in the submariner playbook. [Carlos Camacho]

    This patch adds some debung information when getting the submariner operator code

Fixes

  • Adjust operator image overrides. [Carlos Camacho]

    This patch fix the parameter to override the submariner operator

  • Remove quotes from eof. [Carlos Camacho]

    Quotes in OEF blocks variable expansion which is the default behavior inside of here-docs. This was disabled by quoting the label (with single or double quotes).

v0.6.0 - Release date: 2020-11-20

Chore

  • Cut 0.6.0. [Carlos Camacho]

    This releases KubeInit’s 0.6.0

Documentation

  • Add inventory and playbook diagrams. [Carlos Camacho]

    This patch renders automatically the inventory and supported playbooks for the supported scenarios.

  • Add syntax check docs for commits. [Carlos Camacho]

    This patch updates the docs for adding a https://www.conventionalcommits.org reference

Features

  • Add fixed mac address to the external interface. [BK, Carlos Camacho]

    This patch adds support for adding a fixed mac address to the external interface in the service node.

  • Include submariner container image build deployments. [Carlos Camacho]

    This patch adds a PoC for building the container images for the submariner-operator repo based on a PR.

  • Enable the container registry by default. [Carlos Camacho]

    This patch synchronize the remote registry with the local registry instance for the current supported Kubernetes distributions.

  • Include a local disconnected registry. [Carlos Camacho]

    This patch enables the ability to use a disconnected local container image registry to speed up the deployments.

  • Add vcpus configurable for okd bootstrap. [cgoguyer]

  • Make vcpus configurable. [cgoguyer]

  • Make globalnet configurable. [Carlos Camacho]

    This patch adds a new role variable to make globalnet optinal.

  • Use fqdn in cluster definition. [Carlos Camacho]

    This patch introduces the FQDN usage in the Ubuntu based clusters, also, triggers cloud-init in every node after the initial package update.

  • Include submariner job. [Carlos Camacho]

    This patch adds the submariner job.

  • Include submariner playbook. [Carlos Camacho]

    This patch includes the Ansible automation to connect two KubeInit clusters with OKD and RKE.

  • Include a commitlint check. [Carlos Camacho]

    This patch adds a commitlint check for every pull request.

  • Include submariner and registry roles. [Carlos Camacho]

    This patch adds the skeleton of the new roles to be integrated

Fixes

  • Include –image-override in the submariner playbook. [Carlos Camacho]

    This patch makes fully usable the submariner job and the CI deployment.

  • Adjust ci job variables and insecure registries. [Carlos Camacho]

    This patch fixes some CI job variables not validated properly and the RKE insecure registry deployment.

  • Appends okd pullsecret to disconnected install. [Carlos Camacho]

    This patch appends the disconnected install auth token to the pullsecrets variable so its added to the pullSecret install-config variable when deploying the OKD cluster.

  • Stop install on CentOS7. [Juan Badia Payno]

  • Solve masquerade issues. [Carlos Camacho]

    This patch solves some masquerading issues in the hypervisor.

  • Adjust subctl commands. [Carlos Camacho]

    This patch adjust both broker and secondary cluster deployment.

  • Include no-label and remove comment from script. [Carlos Camacho]

    This patch makes the join cluster command non interactive. Also removes some comments in the scrips first line.

  • Adjust subctl commands. [Carlos Camacho]

    This patch adjust both broker and secondary cluster deployment.

  • Swapped variable names within kubeinit_okd_dependencies. [Bilal Khoukhi]

    Swaps the variables within kubeinit_okd_dependencies. Client was given the Installer’s URL, and vice versa.

  • Move from virt-resize to qemu-img resize. [Carlos Camacho]

    Current libguestfs 1.40.2 fails with virt-resize: error: libguestfs error: f2fs: unknown group

  • Fix permalinks in theme. [Carlos Camacho]

Refactor

  • Move auth pullsecret as a role variable. [Carlos Camacho]

    This change moves the pullsecret JSON data in the OKD role as a variable.

  • Code split. [Carlos Camacho]

    This patch organizes better the template configs for deploying okd and rke.

  • Add regexp for changelog. [Carlos Camacho]

    This adds the correct regular expressions for the changelog.

v0.5.7 - Release date: 2020-10-21

  • Prune changelog, add job dependency, and release. [Carlos Camacho]

v0.5.6 - Release date: 2020-10-21

  • Fetch all history. [Carlos Camacho]

v0.5.4 - Release date: 2020-10-21

  • Build with changelog. [Carlos Camacho]

    This patch renders the buildlog and creates automatically the project’s first release

  • Update jobs and render first GH release. [Carlos Camacho]

  • Pass env var. [Carlos Camacho]

  • Update script. [Carlos Camacho]

  • Auto release. [Carlos Camacho]

  • Release to galaxy. [Carlos Camacho]

  • Bad. [Carlos Camacho]

  • Test. [Carlos Camacho]

  • Test. [Carlos Camacho]

  • Test job. [Carlos Camacho]

  • Fix bundle. [Carlos Camacho]

  • Deploy cdk 3 master nodes. [Carlos Camacho]

  • Fix report path. [Carlos Camacho]

  • Podman to docker. [Carlos Camacho]

  • Fix molecule. [Carlos Camacho]

  • Clean. [Carlos Camacho]

  • Cdk content. [Carlos Camacho]

  • New roles. [Carlos Camacho]

  • Ubuntu. [Carlos Camacho]

  • Upgrade. [Carlos Camacho]

  • Add haproxy role. [Carlos Camacho]

  • Split bind. [Carlos Camacho]

  • Split nfs. [Carlos Camacho]

  • Include apache role. [Carlos Camacho]

  • Ha k8s. [Carlos Camacho]

  • Include raw k8s. [Carlos Camacho]

  • Include stale job. [Carlos Camacho]

  • Include ci envs. [Carlos Camacho]

  • Allow multiple clusters per host. [Carlos Camacho]

  • Rem bootstrap node. [Carlos Camacho]

  • Match PV-PVC. [Carlos Camacho]

  • Slides. [Carlos Camacho]

  • Add firewalld rules. [Carlos Camacho]

  • From container. [Carlos Camacho]

  • Add dockerfile. [Carlos Camacho]

  • Cleanup. [Carlos Camacho]

  • Roles refactor. [Carlos Camacho]

  • Partial organization. [Carlos Camacho]

  • Include readme in docs. [Carlos Camacho]

  • Update README. [Carlos Camacho]

  • Add manifests for day 1 autoapprover. [Yolanda Robla]

  • Add modifications for rhcos download. [Yolanda Robla]

  • Add changes to move to 4.6 and full iso. [Yolanda Robla]

  • Changes for using new full ISO image. [Yolanda Robla]

  • Changes needed for 4.6 and customizing iso. [Yolanda Robla]

  • Add new script to prepare iso for offline install. [Yolanda Robla]

  • Add pipeline to deploy a cluster. [Yolanda Robla]

  • Add fixes for ignition configuration. [Yolanda Robla]

  • Add login command to produce image. [Yolanda Robla]

  • Add fixes for libvirt dns. [Yolanda Robla]

  • Add ci for building image. [Yolanda Robla]

  • Add modifications for local dns. [Yolanda Robla]

  • Add README.md file. [Yolanda Robla]

  • Remove inventory/hosts file. [Yolanda Robla]

  • Upload sample inventory.hosts with all settings. [Yolanda Robla]

  • Add fixes for worker vms. [Yolanda Robla]

  • Add new changes for bootstrap. [Yolanda Robla]

  • Add fixes to create addresses for hosts. [Yolanda Robla]

  • Add changes for iso install. [Yolanda Robla]

  • Add changes in coreos installer service. [Yolanda Robla]

  • Add management of bootstrap vm. [Yolanda Robla]

  • Add new task to prepare the isos to be installed. [Yolanda Robla]

  • Add tasks for generating ignition files. [Yolanda Robla]

  • Add new changes for pulling live cd. [Yolanda Robla]

  • Add steps for configuring installer. [Yolanda Robla]

  • New changes for preparing install. [Yolanda Robla]

  • Add initial preparation tasks. [Yolanda Robla]

  • Initial commit. [Yolanda Robla]

  • Add collection. [Carlos Camacho]

  • Fix lints. [Carlos Camacho]

  • Include CI scripts. [Carlos Camacho]

  • Fix logo link. [Carlos Camacho]

  • Add sanity galaxy check. [Carlos Camacho]

  • Tetst Galaxy automation. [Carlos Camacho]

  • Update galaxy file. [Carlos Camacho]

  • Reduce RAM reqs and add RAM validation. [Carlos Camacho]

  • Add tool to publish to Galaxy. [Carlos Camacho]

  • Fix vars prefix. [Carlos Camacho]

  • Include validations role. [Carlos Camacho]

  • Replace pending old ref. [Carlos Camacho]

  • Replace ccamacho with Kubeinit where applicable. [Glenn Marcy]

  • Add HowTo’s to readme. [Carlos Camacho]

  • Adjust external variable. [Carlos Camacho]

  • Allow DNS queries for external view. [Carlos Camacho]

  • WIP external interface, multizone bind, and remove template in conditionals. [Carlos Camacho]

  • Allow Debian/Ubuntu hosts + Kubevirt. [Carlos Camacho]

  • Cleanup KubeVirt role. [Carlos Camacho]

  • Add Kubevirt support. [Carlos Camacho]

  • Fix lint. [Carlos Camacho]

  • Add kubevirt steps. [Carlos Camacho]

  • Replace hyphens by underscore. [Carlos Camacho]

  • Kubevirt changes. [Carlos Camacho]

  • Add kubevirt WIP. [Carlos Camacho]

  • Update logo. [Carlos Camacho]

  • Minor fixes. [Carlos Camacho]

  • Fix lint nits. [Carlos Camacho]

  • Testing basic molecule coverage. [Carlos Camacho]

  • REadme fix. [Carlos Camacho]

  • Include html badges. [Carlos Camacho]

  • Include badges in readme. [Carlos Camacho]

  • Install ansible in docs build. [Carlos Camacho]

  • Include render autodoc. [Carlos Camacho]

  • Force push pages. [Carlos Camacho]

  • Link docs. [Carlos Camacho]

  • Add symlink. [Carlos Camacho]

  • Create docs. [Carlos Camacho]

  • Print final debug information. [Carlos Camacho]

  • Get some final details. [Carlos Camacho]

  • Adjust ignition files. [Carlos Camacho]

  • Fix nits. [Carlos Camacho]

  • Nits. [Carlos Camacho]

  • REsize disk. [Carlos Camacho]

  • Cleanup. [Carlos Camacho]

  • Deploy correctly okd4.5. [Carlos Camacho]

  • Clean. [Carlos Camacho]

  • Cleanup. [Carlos Camacho]

  • Cleanup. [Carlos Camacho]

  • Okd4.5. [Carlos Camacho]

  • Fixed ip and workaround. [Carlos Camacho]

  • Include ifc renaming. [Carlos Camacho]

  • Include OKD draft. [Carlos Camacho]

  • Fix deplot crio 1.18 and kubeadm 1.18 in centos 8. [Carlos Camacho]

  • Update tasks. [Carlos Camacho]

  • Passing lint. [Carlos Camacho]

  • Update deps. [Carlos Camacho]

  • Lint cleanup. [Carlos Camacho]

  • Readme. [Carlos Camacho]

  • New readme. [Carlos Camacho]

  • Group linters. [Carlos Camacho]

  • Yamllint. [Carlos Camacho]

  • Rename job. [Carlos Camacho]

  • Move to cri-o and centos 8. [Carlos Camacho]

  • Push howto and minor templates fixes. [Carlos Camacho]

  • Adjust VM templates. [Carlos Camacho]

  • Adjust ram and hypervisor IP. [Carlos Camacho]

  • Forgot minor fixes push. [Carlos Camacho]

  • Fix templates, first verison done. [Carlos Camacho]

  • Clean lint. [Carlos Camacho]

  • Comment socond reboot. [Carlos Camacho]

  • Fix req file. [Carlos Camacho]

  • Ansible execution fixes. [Carlos Camacho]

  • Add more fixes. [Carlos Camacho]

  • Fix zombi guests. [Carlos Camacho]

  • Fix/finish provisioning templates. [Carlos Camacho]

  • Introduce Ansible automation. [Carlos Camacho]

  • Initial commit. [Carlos Camacho]