Skip to content

Commit

Permalink
upstream rebase and fixed hostname issue (#303)
Browse files Browse the repository at this point in the history
* build(deps): bump actions/checkout from 2.3.4 to 2.4.0 (openshift-kni#812)

Bumps [actions/checkout](https://github.com/actions/checkout) from 2.3.4 to 2.4.0.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](actions/checkout@v2.3.4...v2.4.0)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* build(deps): update ansible requirement from <4.7.0 to <4.9.0 (openshift-kni#813)

Updates the requirements on [ansible](https://github.com/ansible/ansible) to permit the latest version.
- [Release notes](https://github.com/ansible/ansible/releases)
- [Commits](https://github.com/ansible/ansible/commits)

---
updated-dependencies:
- dependency-name: ansible
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <[email protected]>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* build(deps): bump technote-space/broken-link-checker-action

Bumps [technote-space/broken-link-checker-action](https://github.com/technote-space/broken-link-checker-action) from 2.2.9 to 2.2.10.
- [Release notes](https://github.com/technote-space/broken-link-checker-action/releases)
- [Changelog](https://github.com/technote-space/broken-link-checker-action/blob/main/.releasegarc)
- [Commits](technote-space/broken-link-checker-action@v2.2.9...v2.2.10)

---
updated-dependencies:
- dependency-name: technote-space/broken-link-checker-action
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>

* build(deps): bump actions/setup-python from 2.2.2 to 2.3.0

Bumps [actions/setup-python](https://github.com/actions/setup-python) from 2.2.2 to 2.3.0.
- [Release notes](https://github.com/actions/setup-python/releases)
- [Commits](actions/setup-python@v2.2.2...v2.3.0)

---
updated-dependencies:
- dependency-name: actions/setup-python
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>

* build(deps): bump actions/cache from 2.1.6 to 2.1.7

Bumps [actions/cache](https://github.com/actions/cache) from 2.1.6 to 2.1.7.
- [Release notes](https://github.com/actions/cache/releases)
- [Commits](actions/cache@v2.1.6...v2.1.7)

---
updated-dependencies:
- dependency-name: actions/cache
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>

* build(deps): update ansible requirement from <4.9.0 to <4.10.0 (openshift-kni#817)

Updates the requirements on [ansible](https://github.com/ansible/ansible) to permit the latest version.
- [Release notes](https://github.com/ansible/ansible/releases)
- [Commits](https://github.com/ansible/ansible/commits)

---
updated-dependencies:
- dependency-name: ansible
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <[email protected]>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* build(deps): bump actions/setup-python from 2.3.0 to 2.3.1

Bumps [actions/setup-python](https://github.com/actions/setup-python) from 2.3.0 to 2.3.1.
- [Release notes](https://github.com/actions/setup-python/releases)
- [Commits](actions/setup-python@v2.3.0...v2.3.1)

---
updated-dependencies:
- dependency-name: actions/setup-python
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>

* build(deps): update ansible requirement from <4.10.0 to <5.1.0 (openshift-kni#819)

Updates the requirements on [ansible](https://github.com/ansible/ansible) to permit the latest version.
- [Release notes](https://github.com/ansible/ansible/releases)
- [Commits](https://github.com/ansible/ansible/commits)

---
updated-dependencies:
- dependency-name: ansible
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <[email protected]>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* build(deps): update ansible requirement from <5.1.0 to <5.2.0 (openshift-kni#821)

Updates the requirements on [ansible](https://github.com/ansible/ansible) to permit the latest version.
- [Release notes](https://github.com/ansible/ansible/releases)
- [Commits](https://github.com/ansible/ansible/commits)

---
updated-dependencies:
- dependency-name: ansible
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <[email protected]>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Update install-config.j2 template to support provisioningDHCPRange

Allow to set the provisioningDHCPRange if the prov_dhcp_range variable is set

* Add derekhiggins as an approver

The previous owners of this repository have moved
onto other things, I'll will be keeping things operating
until more permanent owners are identified.

* Update OWNERS_ALIASES (openshift-kni#820)

* build(deps): bump technote-space/broken-link-checker-action (openshift-kni#825)

Bumps [technote-space/broken-link-checker-action](https://github.com/technote-space/broken-link-checker-action) from 2.2.10 to 2.2.11.
- [Release notes](https://github.com/technote-space/broken-link-checker-action/releases)
- [Changelog](https://github.com/technote-space/broken-link-checker-action/blob/main/.releasegarc)
- [Commits](technote-space/broken-link-checker-action@v2.2.10...v2.2.11)

---
updated-dependencies:
- dependency-name: technote-space/broken-link-checker-action
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* build(deps): update ansible requirement from <5.2.0 to <5.3.0 (openshift-kni#827)

Updates the requirements on [ansible](https://github.com/ansible/ansible) to permit the latest version.
- [Release notes](https://github.com/ansible/ansible/releases)
- [Commits](https://github.com/ansible/ansible/commits)

---
updated-dependencies:
- dependency-name: ansible
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <[email protected]>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Add defaults for async deployment timeouts (openshift-kni#809)

Set defaults for increase_bootstrap_timeout and increase_install_timeout
vars

* build(deps): bump technote-space/broken-link-checker-action (openshift-kni#829)

Bumps [technote-space/broken-link-checker-action](https://github.com/technote-space/broken-link-checker-action) from 2.2.11 to 2.2.12.
- [Release notes](https://github.com/technote-space/broken-link-checker-action/releases)
- [Changelog](https://github.com/technote-space/broken-link-checker-action/blob/main/.releasegarc)
- [Commits](technote-space/broken-link-checker-action@v2.2.11...v2.2.12)

---
updated-dependencies:
- dependency-name: technote-space/broken-link-checker-action
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Add Optional support for irmc BMC (openshift-kni#826)

This allows for irmc BMC to be used in the install-config.yaml.

* Use rhcos json stream on 4.8+ (openshift-kni#831)

* Use openshift-baremetal-install coreos print-stream-json to obtain RHCOS image paths

- Starting in 4.8 the installer contains pinned images of RHCOS in the binary
- Format of the stream is different so its parsing differs to older versions

* Use correct conditional on rhcos facts

* Use proper rhcos key

* Add Optional support for FIPS enabled clusters (openshift-kni#841)

Signed-off-by: Denis Ollier <[email protected]>

* build(deps): bump technote-space/broken-link-checker-action

Bumps [technote-space/broken-link-checker-action](https://github.com/technote-space/broken-link-checker-action) from 2.2.12 to 2.3.1.
- [Release notes](https://github.com/technote-space/broken-link-checker-action/releases)
- [Changelog](https://github.com/technote-space/broken-link-checker-action/blob/main/.releasegarc)
- [Commits](technote-space/broken-link-checker-action@v2.2.12...v2.3.1)

---
updated-dependencies:
- dependency-name: technote-space/broken-link-checker-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>

* build(deps): bump actions/stale from 4 to 6

Bumps [actions/stale](https://github.com/actions/stale) from 4 to 6.
- [Release notes](https://github.com/actions/stale/releases)
- [Changelog](https://github.com/actions/stale/blob/main/CHANGELOG.md)
- [Commits](actions/stale@v4...v6)

---
updated-dependencies:
- dependency-name: actions/stale
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <[email protected]>

* build(deps): bump actions/cache from 2.1.7 to 3.0.11

Bumps [actions/cache](https://github.com/actions/cache) from 2.1.7 to 3.0.11.
- [Release notes](https://github.com/actions/cache/releases)
- [Changelog](https://github.com/actions/cache/blob/main/RELEASES.md)
- [Commits](actions/cache@v2.1.7...v3.0.11)

---
updated-dependencies:
- dependency-name: actions/cache
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <[email protected]>

* Remove reference to openstack baremetal and update it to baremetal

* build(deps): update ansible requirement from <5.3.0 to <7.2.0

Updates the requirements on [ansible](https://github.com/ansible/ansible) to permit the latest version.
- [Release notes](https://github.com/ansible/ansible/releases)
- [Commits](https://github.com/ansible/ansible/commits)

---
updated-dependencies:
- dependency-name: ansible
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <[email protected]>

* build(deps): bump actions/setup-python from 2.3.1 to 4.3.1

Bumps [actions/setup-python](https://github.com/actions/setup-python) from 2.3.1 to 4.3.1.
- [Release notes](https://github.com/actions/setup-python/releases)
- [Commits](actions/setup-python@v2.3.1...v4.3.1)

---
updated-dependencies:
- dependency-name: actions/setup-python
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <[email protected]>

* build(deps): bump actions/checkout from 2.4.0 to 3.2.0

Bumps [actions/checkout](https://github.com/actions/checkout) from 2.4.0 to 3.2.0.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](actions/checkout@v2.4.0...v3.2.0)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <[email protected]>

* Adjust owners and aliases

* Delete greetings.yml

* Update jekyll.yml

Lock to Major

* Delete ansible-lint.yml

* Prefix temp directories with baremetal-deploy to avoid permission issues

baremetal-deploy download OpenShift binaries in a /tmp/ansible.xxxx folder using the tempfile ansible module.
baremetal-deploy also remove all /tmp/ansible.xxxx folders before downloading those binaries.
cf https://github.com/openshift-kni/baremetal-deploy/blob/47e20e26595fcf7696d7a6414cf4acb2af683a6e/ansible-ipi-install/roles/installer/tasks/10_get_oc.yml
This is weird to me, but I may miss some context here.

The problem is baremetal-deploy is used by other ansible code that may use the tempfile ansible module with a user different than kni.
The deletion of the folders will fail because of permission issue.

This patch prefix the temp folder with baremetal-deploy. Binaries will be downloaded in /tmp/baremetal-deploy.xxxx temp folder.
A better approach may have been to delete those temp folder after usage, instead of before, and delete only the ones created.

* Add support to pass NMstate vars in install-config

This patch allows to include NMstate network settings
in the install-config.yaml file and setup custom
networking at day1

* fix name of fact for worker when using raw config

* fix name of fact for worker when using file config

* add options to pass network varibles per node

this allows to pass files with NMstate settings
and have the option to include jinja expressions
to be replaced with variable content from the inventory

* fix block code of inventory example

* fix template verification with stat conditions

* delegate NM template checking to ansible controller

* Update test container image

Update this image to something that builds and is
more recent then Fedora31/Go1.13.5

* Fix CI

- use latest versions of actions in .github/workflows/ansible-lint.yml
- fix some reports from ansible-lint

* Support externalMACAddress for bootstrapVM (openshift-kni#911)

* Support externalMACAddress for bootstrapVM

Add the ability to set the external Mac address for the bootstrap
VM in the install-config.j2 template

* Changing the example in the doc

Put an example more generic to avoid copy paste issue

* Allow passing a custom release_url

When release_url is defined do not set the default release URLs

* build(deps): bump actions/setup-python from 4.3.1 to 4.4.0

Bumps [actions/setup-python](https://github.com/actions/setup-python) from 4.3.1 to 4.4.0.
- [Release notes](https://github.com/actions/setup-python/releases)
- [Commits](actions/setup-python@v4.3.1...v4.4.0)

---
updated-dependencies:
- dependency-name: actions/setup-python
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>

* build(deps): bump actions/cache from 3.0.11 to 3.2.2

Bumps [actions/cache](https://github.com/actions/cache) from 3.0.11 to 3.2.2.
- [Release notes](https://github.com/actions/cache/releases)
- [Changelog](https://github.com/actions/cache/blob/main/RELEASES.md)
- [Commits](actions/cache@v3.0.11...v3.2.2)

---
updated-dependencies:
- dependency-name: actions/cache
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>

* build(deps): bump actions/stale from 6 to 7

Bumps [actions/stale](https://github.com/actions/stale) from 6 to 7.
- [Release notes](https://github.com/actions/stale/releases)
- [Changelog](https://github.com/actions/stale/blob/main/CHANGELOG.md)
- [Commits](actions/stale@v6...v7)

---
updated-dependencies:
- dependency-name: actions/stale
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <[email protected]>

* build(deps): bump actions/checkout from 3.2.0 to 3.3.0

Bumps [actions/checkout](https://github.com/actions/checkout) from 3.2.0 to 3.3.0.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](actions/checkout@v3.2.0...v3.3.0)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>

* build(deps): bump actions/cache from 3.2.2 to 3.2.3

Bumps [actions/cache](https://github.com/actions/cache) from 3.2.2 to 3.2.3.
- [Release notes](https://github.com/actions/cache/releases)
- [Changelog](https://github.com/actions/cache/blob/main/RELEASES.md)
- [Commits](actions/cache@v3.2.2...v3.2.3)

---
updated-dependencies:
- dependency-name: actions/cache
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>

* Adjust asciidoctor version

* Adjust asciidoctor version syntax

* Adjust jekyll-ascidoc instead of asciidoctor

* Adjust jekyll version

* Adjust sass-converter version

* Remove trailing comma

* build(deps): bump actions/setup-python from 4.4.0 to 4.5.0

Bumps [actions/setup-python](https://github.com/actions/setup-python) from 4.4.0 to 4.5.0.
- [Release notes](https://github.com/actions/setup-python/releases)
- [Commits](actions/setup-python@v4.4.0...v4.5.0)

---
updated-dependencies:
- dependency-name: actions/setup-python
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>

* build(deps): bump actions/cache from 3.2.3 to 3.2.4

Bumps [actions/cache](https://github.com/actions/cache) from 3.2.3 to 3.2.4.
- [Release notes](https://github.com/actions/cache/releases)
- [Changelog](https://github.com/actions/cache/blob/main/RELEASES.md)
- [Commits](actions/cache@v3.2.3...v3.2.4)

---
updated-dependencies:
- dependency-name: actions/cache
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>

* build(deps): bump actions/cache from 3.2.4 to 3.2.5

Bumps [actions/cache](https://github.com/actions/cache) from 3.2.4 to 3.2.5.
- [Release notes](https://github.com/actions/cache/releases)
- [Changelog](https://github.com/actions/cache/blob/main/RELEASES.md)
- [Commits](actions/cache@v3.2.4...v3.2.5)

---
updated-dependencies:
- dependency-name: actions/cache
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>

* build(deps): update ansible requirement from <7.2.0 to <7.3.0

Updates the requirements on [ansible](https://github.com/ansible/ansible) to permit the latest version.
- [Release notes](https://github.com/ansible/ansible/releases)
- [Commits](https://github.com/ansible/ansible/commits)

---
updated-dependencies:
- dependency-name: ansible
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <[email protected]>

* build(deps): bump actions/cache from 3.2.5 to 3.2.6

Bumps [actions/cache](https://github.com/actions/cache) from 3.2.5 to 3.2.6.
- [Release notes](https://github.com/actions/cache/releases)
- [Changelog](https://github.com/actions/cache/blob/main/RELEASES.md)
- [Commits](actions/cache@v3.2.5...v3.2.6)

---
updated-dependencies:
- dependency-name: actions/cache
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>

* build(deps): update ansible requirement from <7.3.0 to <7.4.0 (openshift-kni#948)

Updates the requirements on [ansible](https://github.com/ansible/ansible) to permit the latest version.
- [Release notes](https://github.com/ansible/ansible/releases)
- [Commits](https://github.com/ansible/ansible/commits)

---
updated-dependencies:
- dependency-name: ansible
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Removing Ansible as a package dep.

You can't run ansible without is already being installed. There are some
packaging dep conflicts in installing ansible from RPMs on RHEL in the
shared labs. This requirement will always hit that problem. Since
ansible has to be already installed to get to this point there's no
reason for it to be required here. If it's been installed by pip instead
of RPM then the deploy can't continue.

* build(deps): bump actions/checkout from 3.3.0 to 3.4.0

Bumps [actions/checkout](https://github.com/actions/checkout) from 3.3.0 to 3.4.0.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](actions/checkout@v3.3.0...v3.4.0)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>

* build(deps): bump actions/stale from 7 to 8

Bumps [actions/stale](https://github.com/actions/stale) from 7 to 8.
- [Release notes](https://github.com/actions/stale/releases)
- [Changelog](https://github.com/actions/stale/blob/main/CHANGELOG.md)
- [Commits](actions/stale@v7...v8)

---
updated-dependencies:
- dependency-name: actions/stale
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <[email protected]>

* build(deps): bump actions/cache from 3.2.6 to 3.3.1

Bumps [actions/cache](https://github.com/actions/cache) from 3.2.6 to 3.3.1.
- [Release notes](https://github.com/actions/cache/releases)
- [Changelog](https://github.com/actions/cache/blob/main/RELEASES.md)
- [Commits](actions/cache@v3.2.6...v3.3.1)

---
updated-dependencies:
- dependency-name: actions/cache
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>

* Add retries to get the ocp client

* build(deps): bump actions/checkout from 3.4.0 to 3.5.1

Bumps [actions/checkout](https://github.com/actions/checkout) from 3.4.0 to 3.5.1.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](actions/checkout@v3.4.0...v3.5.1)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>

* Add support to dualstack vips starting in 4.12 (openshift-kni#953)

This patch allows to specify IPv4 and IPv6 VIPs
for Ingress and API using dualstack_vips boolean.
Validations are included and if not specify it,
then it defaults to old variables to specify a
single VIP for Ingress and API.

* build(deps): bump actions/checkout from 3.5.1 to 3.5.2

Bumps [actions/checkout](https://github.com/actions/checkout) from 3.5.1 to 3.5.2.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](actions/checkout@v3.5.1...v3.5.2)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>

* build(deps): update ansible requirement from <7.4.0 to <7.5.0

Updates the requirements on [ansible](https://github.com/ansible/ansible) to permit the latest version.
- [Release notes](https://github.com/ansible/ansible/releases)
- [Commits](https://github.com/ansible/ansible/commits)

---
updated-dependencies:
- dependency-name: ansible
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <[email protected]>

* Add support for wwnVendorExtension & wwnWithExtension as disk hints (openshift-kni#960)

* Add wwnVendorExtension, wwnWithExtension

to roothint_list

* Update install-config templates

Add quotes around disk hint value,
in case the value in format of "0x1234"
which Ansible will convert to integer

Signed-off-by: Rabin Yasharzadehe <[email protected]>

---------

Signed-off-by: Rabin Yasharzadehe <[email protected]>

* Add missing quotes for drive hint in workers group (openshift-kni#961)

* build(deps): bump actions/setup-python from 4.5.0 to 4.6.0

Bumps [actions/setup-python](https://github.com/actions/setup-python) from 4.5.0 to 4.6.0.
- [Release notes](https://github.com/actions/setup-python/releases)
- [Commits](actions/setup-python@v4.5.0...v4.6.0)

---
updated-dependencies:
- dependency-name: actions/setup-python
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>

* build(deps): update ansible requirement from <7.5.0 to <7.6.0

Updates the requirements on [ansible](https://github.com/ansible/ansible) to permit the latest version.
- [Release notes](https://github.com/ansible/ansible/releases)
- [Commits](https://github.com/ansible/ansible/commits)

---
updated-dependencies:
- dependency-name: ansible
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <[email protected]>

* build(deps): update ansible requirement from <7.6.0 to <7.7.0

Updates the requirements on [ansible](https://github.com/ansible/ansible) to permit the latest version.
- [Release notes](https://github.com/ansible/ansible/releases)
- [Commits](https://github.com/ansible/ansible/commits)

---
updated-dependencies:
- dependency-name: ansible
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <[email protected]>

* build(deps): bump actions/setup-python from 4.6.0 to 4.6.1

Bumps [actions/setup-python](https://github.com/actions/setup-python) from 4.6.0 to 4.6.1.
- [Release notes](https://github.com/actions/setup-python/releases)
- [Commits](actions/setup-python@v4.6.0...v4.6.1)

---
updated-dependencies:
- dependency-name: actions/setup-python
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>

* Introduce the use of imageDigestSources (openshift-kni#965)

The imageContentSources is being deprecated in the openshift-installer
and imageDigestSources is replacing it.
Allow the use of imageDigestSources when the disconnected registry is created.
Updating docs to reflect the use of each CR depending on the OCP version

* build(deps): bump actions/checkout from 3.5.2 to 3.5.3

Bumps [actions/checkout](https://github.com/actions/checkout) from 3.5.2 to 3.5.3.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](actions/checkout@v3.5.2...v3.5.3)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>

* Add externalMACAddress in virtualmedia template (openshift-kni#974)

Bringing parity with non-virtualmedia installs by adding
externalMACAddress in the virtualmedia template, allowing
libvirt to use a specific hwaddr in the provisioner host.
Limiting the use of provisioningHostIP in virtualmedia only
in the supported (4.6) version

Signed-off-by: Tony Garcia <[email protected]>

* Change the RHCOS image cache container public registry (openshift-kni#978)

* Change the RHCOS image cache container

registry.centos.org seems to be done or unavailable.
Changing from registry.centos.org to quay.io and add the ability
to change it if needed.

* Change registry.centos.org in the documentation

Change the documentation to replace registry.centos.org to quay.io

* Allowing status code 301 when verifying the internet connectivity (openshift-kni#986)

Currently, when checking the connectivity to the Internet, an HTTP query
is set against https://www.redhat.com.

This address will respond with a 301 status code redirecting the client
to https://www.redhat.com/en.

The URI ansible module is able to follow redirects so, if everything is
OK, the query shour result in either a 200 status code if the server is
reachable, or a -1 if it's not. In this later scenario, a disconnected
environment is assumed.

The problem is in some labs the web server gets into an infinite
redirect loop, so the resulting status code would be 301.

This change allows for this status code to be accepted as evidence that
the Red Hat web site was reached and, therefore, the network has
Internet access.

* Added support for redfish for KVM hosts

Currently redfish is supported for HP and Dell systems, but none of
these vendors provide settings compatible with sushy-tools based virtual
BMCs. For instance, all the KVMs in the same hypervisor share the BMC
address, and are differentiated by the system ID, which is part of the
resource path.

This change extends the install-config and install-config-virtualmedia
templates to allow for sushy-tools based redfish vBMCs.

* Fix task Get URL of host providing the webserver (openshift-kni#988)

Fix the issue "'in <string>' requires string as left operand, not int"
at the task "Get URL of host providing the webserver"

* Rename node-prep role to node_prep (openshift-kni#987)

* Rename node-prep role to node_prep

This role among install is expected to be moved to ansible collections.
Ansible collections requires that roles include only underscores, i.e.
hyphens are not allowed

* Keep a symlink to the old repo name

* install-config.j2: support disableCertificateVerification for irmc (openshift-kni#983)

Signed-off-by: Zhou Hao <[email protected]>

* Use collections (openshift-kni#1000)

* Use collections

Move to use collections, this is to conclude the migration of roles to
the redhatci.ocp collection.
Add the steps and changes required to consume collections.
Remove the submodule for containers.podman and use a newer version.
Update the docs to make clear the playbook is using collections.

* Install collection dependency in GH workflow

* updated playbook to use collections

* fixing playbook

* reading collection path custom ign file

* r640 servers shift to rack f18

* custom network config was not set

* fixed lab dns problem

* corrected variable dict

* scale worker patch

* updated r650 nic naming

* updated public vlan nic for fc640

* removed rdo packages that are not required in rhel9

* fixed jinja templating issue

* changed scale lab api endpoint

---------

Signed-off-by: dependabot[bot] <[email protected]>
Signed-off-by: Denis Ollier <[email protected]>
Signed-off-by: Rabin Yasharzadehe <[email protected]>
Signed-off-by: Tony Garcia <[email protected]>
Signed-off-by: Zhou Hao <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Pablo Iranzo Gómez <[email protected]>
Co-authored-by: Rabin Yasharzadehe <[email protected]>
Co-authored-by: Derek Higgins <[email protected]>
Co-authored-by: Roger Lopez <[email protected]>
Co-authored-by: Jose Luis Ojosnegros Manchon <[email protected]>
Co-authored-by: Patrick Easters <[email protected]>
Co-authored-by: Bill Peck <[email protected]>
Co-authored-by: Tony Garcia <[email protected]>
Co-authored-by: Denis Ollier <[email protected]>
Co-authored-by: Avani Bhatt <[email protected]>
Co-authored-by: Guillaume Vincent <[email protected]>
Co-authored-by: Manuel Rodriguez <[email protected]>
Co-authored-by: Manuel Rodriguez <[email protected]>
Co-authored-by: Frederic Lepied <[email protected]>
Co-authored-by: fdaencar <[email protected]>
Co-authored-by: Tony Garcia <[email protected]>
Co-authored-by: Dan Radez <[email protected]>
Co-authored-by: Pierre Blanc <[email protected]>
Co-authored-by: Rabin Yasharzadehe <[email protected]>
Co-authored-by: Nacho Silla <[email protected]>
Co-authored-by: Nacho Silla <[email protected]>
Co-authored-by: Zhou Hao <[email protected]>
  • Loading branch information
24 people committed Sep 27, 2024
1 parent 91c94a3 commit 348b396
Show file tree
Hide file tree
Showing 113 changed files with 743 additions and 6,647 deletions.
3 changes: 3 additions & 0 deletions .ansible-lint
Original file line number Diff line number Diff line change
Expand Up @@ -8,10 +8,13 @@ skip_list:
- '601'
- '602'
- '701'
- ignore-errors
- var-naming
#(dblack) AFAICT the ansible linter only works with a prebuilt containr w/ latest
#ansible core, which does not include the ipmi or openssh modules that are used
#in the playbooks below. So excluding them here is a hack to work around the
#linter error.
exclude_paths:
- ansible-ipi-install/roles/prepare-kni/tasks/main.yml
- ansible-ipi-install/roles/scale-node-prep/tasks/main.yml

34 changes: 26 additions & 8 deletions .github/workflows/ansible-lint.yml
Original file line number Diff line number Diff line change
@@ -1,17 +1,35 @@
name: Ansible Lint # feel free to pick your own name
on: [push, pull_request]
---
name: Ansible Lint # feel free to pick your own name

on: pull_request

jobs:
build:
runs-on: ubuntu-latest

steps:
# Important: This sets up your GITHUB_WORKSPACE environment variable
- uses: actions/checkout@v3
- uses: actions/checkout@v3.5.3

- name: Run ansible-lint
# replace `main` with any valid ref, or tags like `v6`
uses: ansible-community/ansible-lint-action@v6
# optional:
- uses: actions/[email protected]
with:
path: "ansible-ipi-install/" # <-- only one value is allowed
path: ~/.cache/pip
key: ${{ runner.os }}-pip-${{ hashFiles('**/*requirements.txt') }}
restore-keys: |
${{ runner.os }}-pip-
- uses: actions/[email protected]

- name: Install dependencies
run: |
python -m pip install --upgrade pip
pip install flake8 pytest
if [ -f requirements.txt ]; then pip install -r requirements.txt; fi
if [ -f test-requirements.txt ]; then pip install -r test-requirements.txt; fi
ansible-galaxy collection install -r ansible-ipi-install/requirements.yml
- name: Lint Ansible Playbook
run: |
ansible-lint -p --force-color -c .ansible-lint ansible-ipi-install/playbook.yml
...
5 changes: 5 additions & 0 deletions .github/workflows/broken-link-check.yml
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
---

on:
schedule:
- cron: "0 0 * * *" # daily
Expand All @@ -14,3 +16,6 @@ jobs:
steps:
- name: Broken Link Check
uses: technote-space/[email protected]

...

13 changes: 0 additions & 13 deletions .github/workflows/greetings.yml

This file was deleted.

30 changes: 17 additions & 13 deletions .github/workflows/jekyll.yml
Original file line number Diff line number Diff line change
@@ -1,27 +1,31 @@
---

name: Deploy via Jekyll on GitHub pages

on:
push:
branches:
- master
schedule:
- cron: '0 0 * * *'
- cron: '0 0 * * *'

jobs:
jekyll:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: actions/[email protected]

# Use GitHub Actions' cache to shorten build times and decrease load on servers
- uses: actions/[email protected]
with:
path: vendor/bundle
key: ${{ runner.os }}-gems-${{ hashFiles('**/Gemfile.lock') }}
restore-keys: |
${{ runner.os }}-gems-
# Use GitHub Actions' cache to shorten build times and decrease load on servers
- uses: actions/[email protected]
with:
path: vendor/bundle
key: ${{ runner.os }}-gems-${{ hashFiles('**/Gemfile.lock') }}
restore-keys: |
${{ runner.os }}-gems-
- uses: iranzo/gh-pages-jekyll-action@1
env:
GITHUB_TOKEN: ${{secrets.GITHUB_TOKEN}}
SOURCE_FOLDER: website

- uses: iranzo/[email protected]
env:
GITHUB_TOKEN: ${{secrets.GITHUB_TOKEN}}
SOURCE_FOLDER: website
...
29 changes: 17 additions & 12 deletions .github/workflows/stale.yml
Original file line number Diff line number Diff line change
@@ -1,20 +1,25 @@
---

name: "Close stale issues"
on:
schedule:
- cron: "0 0 * * *"
- cron: "0 0 * * *"

jobs:
stale:
runs-on: ubuntu-latest
steps:
- uses: actions/stale@v5
with:
repo-token: ${{ secrets.GITHUB_TOKEN }}
stale-issue-message: 'This issue is stale because it has been open 60 days with no activity. Remove stale label or comment or this will be closed in 7 days'
days-before-stale: 90
days-before-close: 30
stale-pr-message: 'This PR is stale because it has been open 60 days with no activity. Remove stale label or comment or this will be closed in 7 days'
stale-issue-label: 'no-issue-activity'
exempt-issue-labels: 'awaiting-approval,work-in-progress'
stale-pr-label: 'no-pr-activity'
exempt-pr-labels: 'awaiting-approval,work-in-progress'
- uses: actions/stale@v8
with:
repo-token: ${{ secrets.GITHUB_TOKEN }}
stale-issue-message: 'This issue is stale because it has been open 60 days with no activity. Remove stale label or comment or this will be closed in 7 days'
days-before-stale: 90
days-before-close: 30
stale-pr-message: 'This PR is stale because it has been open 60 days with no activity. Remove stale label or comment or this will be closed in 7 days'
stale-issue-label: 'no-issue-activity'
exempt-issue-labels: 'awaiting-approval,work-in-progress'
stale-pr-label: 'no-pr-activity'
exempt-pr-labels: 'awaiting-approval,work-in-progress'

...

4 changes: 0 additions & 4 deletions .gitmodules
Original file line number Diff line number Diff line change
@@ -1,4 +0,0 @@
[submodule "ansible-ipi-install/collections/ansible_collections/containers/podman"]
path = ansible-ipi-install/collections/ansible_collections/containers/podman
url = https://github.com/containers/ansible-podman-collections.git
shallow = true
5 changes: 2 additions & 3 deletions OWNERS
Original file line number Diff line number Diff line change
Expand Up @@ -2,12 +2,11 @@
filters:
".*":
reviewers:
- directedsoul1
- iranzo
- derekhiggins
approvers:
- derekhiggins
- rlopez133
- iranzo
- directedsoul1

"^documentation/.*":
labels:
Expand Down
8 changes: 6 additions & 2 deletions OWNERS_ALIASES
Original file line number Diff line number Diff line change
Expand Up @@ -2,13 +2,14 @@

aliases:
approvers:
- derekhiggins
- karmab
- davidvossel
- rlopez133
- iranzo
code-reviewers:
- derekhiggins
- karmab
- e-minguez
- davidvossel
- rlopez133
- abays
Expand All @@ -25,6 +26,9 @@ aliases:
- simon3z
- SchSeba
- fedepaol
- Tal-or
- marioferh
- jlojosnegros
cnf-approvers:
- MarSik
- simon3z
Expand All @@ -33,7 +37,7 @@ aliases:
- fromanirh
- cynepco3hahue
dit-reviewers:
- derekhiggins
- rlopez133
- directedsoul1
- iranzo
- johnwilkins
98 changes: 21 additions & 77 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,6 @@
# MESSAGE
This repository is used by limited team who does IPI based installations, for other generic deployment [jetlag](https://github.com/redhat-performance/jetlag) is recommended.

## JetSki
JetSki inherits roles from [upstream](https://github.com/openshift-kni/baremetal-deploy) and aims to provide a consistent, seamless OpenShift installation experience on bare metal in Red Hat's Shared Labs.

Expand All @@ -20,17 +23,31 @@ _**Table of Contents**_

## Introduction

For contributions to the ansible-ipi-install roles please visit the [ansible-collection-redhatci-ocp](https://github.com/redhatci/ansible-collection-redhatci-ocp) repository.

## Installation artifacts

This Ansible playbook and set of Ansible roles are aimed at providing a cluster of Red Hat OpenShift 4 (`IPI`) in the Red Hat shared labs with as little user input and intervention as possible.

- [Performance](features/performance/). Performance-related features like Hugepages, real-time kernel, CPU Manager and Topology Manager.
- [Bonding](features/bonding/). A helper script to create bonding devices with ignition and/or NMstate.
- [DPDK](features/dpdk/). Example workload that uses DPDK libraries for packet processing.
- [Kubernetes NMstate](features/kubernetes-nmstate/). Node-networking configuration driven by Kubernetes and executed by NMstate.
- [Kubernetes NMstate day1](features/kubernetes-nmstate/day1/). Node-networking configuration driven by Kubernetes and executed by NMstate during the deployment of a cluster, by adding settings to install-config.yaml
- [PTP](features/ptp). This operator manages cluster-wide Precision Time Protocol (PTP) configuration.
- [SCTP](features/sctp). These assets enable Stream Control Transmission Protocol (SCTP) in the RHCOS
worker nodes.
- [SR-IOV](features/sriov). The SR-IOV Network Operator creates and manages the components of the SR-IOV stack.
- [CNV](features/cnv). Container Native Virtualization is an add-on to OpenShift Container Platform that allows you to run and manage virtual machine workloads alongside container workloads.

## Prerequisites

The playbook is intended to be run from outside the cluster of machines you wish to deploy on, from a host we will refer to as `jumphost` for the purposes of this discussion. It could even be a user's laptop or some Virtual Machine. The host from which the the playbook is run from (`jumphost`) must satisfy the following requirements

* Ansible >= 2.9
* Python 3.6+
* Fedora/CentOS/RHEL (preferably Fedora 30+)
* Passwordless sudo for user running the playbook on the ansible control node (host where the playbooks are being run from), since certain package installs are done
* Install ansible collection `ansible-galaxy collection install -r requirements.yml` on your local machine

Passwordless sudo can be setup as below:
```
Expand Down Expand Up @@ -71,7 +88,8 @@ The `ansible-ipi-install` directory consists of three main sub-directories in a

- `group_vars` - Contains the `all.yml` which holds the bare minimum variables needed for install
- `inventory` - contains the file `jetski/hosts` that has advanced variables for customized installation
- `roles` - contains 11 roles: `bootstrap`, `prepare-kni`, `add-provisioner`, `network-discovery`, `set-deployment-facts`, `shared-labs-prep`,`node-prep` `installer`, `scale-bootstrap`, `scale-node-prep` and `scale-worker`. `node-prep` handles all the prerequisites that the provisioner node requires prior to running the installer. The `installer` role handles extracting the installer, setting up the manifests, and running the Red Hat OpenShift installation.
- `roles` - contains 9 roles: `bootstrap`, `prepare-kni`, `add-provisioner`, `network-discovery`, `set-deployment-facts`, `shared-labs-prep`,`node_prep` `installer`, `scale-bootstrap`, `scale-node-prep` and `scale-worker`.
- downloads 2 roles from the collectoins `redhatci.ocp` - `node_prep` and `installer`, `node_prep` handles all the prerequisites that the provisioner node requires prior to running the installer. The `installer` role handles extracting the installer, setting up the manifests, and running the Red Hat OpenShift installation.

The purpose served by each role can be summarized as follows:
* `bootstrap` - This role does a **lot** of heavy lifting for seamless deployment in the shared labs. On a high level, this role is responsible for installing needed packages on the `jumphost`, obtaining the list of nodes in your lab allocation dynamically, setting some variables required in inventory as ansible facts (like list of master nodes, worker nodes, mgmt interfaces), copying keys of the `jumphost` to the provisioner, rebuilding the provisioner if needed and finally adding the master and worker nodes to the in-memory dynamic inventory of ansible. This role runs on the `jumphost` aka `localhost`.
Expand All @@ -80,7 +98,7 @@ The purpose served by each role can be summarized as follows:
* `network-discovery` - Set several important variables for the inventory including the NICs and MACs to be used for the provisioning and baremetal networks. Some of the MAC details are obtained from an inventory automatically generated on the Lab Wiki which the network-discovery role uses to further set all variables needed for proper networking. This role runs on the provisioner host.
* `set-deployment-facts` - This role is used to set some of the facts registered on the jumphost on to the provisioner host for use in future roles. This role runs on the provisioner host.
* `shared-labs-prep` - Creates the BM bridge, powers on nodes, sets boot order etc. This role runs on the provisioner host.
* `node-prep` - Prepares the provisioner node for the OpenShift Installer by installing needed packages, creating necessary directories etc. This role runs on the provisioner host.
* `node_prep` - Prepares the provisioner node for the OpenShift Installer by installing needed packages, creating necessary directories etc. This role runs on the provisioner host.
* `installer` - Actually drives the OpenShift Installer. This role runs on the provisioner host.

Scale Up worker roles
Expand Down Expand Up @@ -130,83 +148,9 @@ The tree structure is shown below:
│   │   └── node_inv.j2
│   └── vars
│   └── main.yml
├── installer
│   ├── defaults
│   │   └── main.yml
│   ├── files
│   │   ├── customize_filesystem
│   │   │   ├── master
│   │   │   └── worker -> master
│   │   ├── filetranspile-1.1.1.py
│   │   └── manifests
│   ├── handlers
│   │   └── main.yml
│   ├── library
│   │   └── podman_container.py
│   ├── meta
│   │   └── main.yml
│   ├── tasks
│   │   ├── 10_get_oc.yml
│   │   ├── 15_disconnected_registry_create.yml
│   │   ├── 15_disconnected_registry_existing.yml
│   │   ├── 20_extract_installer.yml
│   │   ├── 23_rhcos_image_paths.yml
│   │   ├── 24_rhcos_image_cache.yml
│   │   ├── 25_create-install-config.yml
│   │   ├── 30_create_metal3.yml
│   │   ├── 40_create_manifest.yml
│   │   ├── 50_extramanifests.yml
│   │   ├── 55_customize_filesystem.yml
│   │   ├── 59_cleanup_bootstrap.yml
│   │   ├── 60_deploy_ocp.yml
│   │   ├── 70_cleanup_sub_man_registeration.yml
│   │   └── main.yml
│   ├── templates
│   │   ├── chrony.conf.j2
│   │   ├── etc-chrony.conf.j2
│   │   ├── httpd_conf.j2
│   │   ├── install-config-appends.j2
│   │   ├── install-config.j2
│   │   ├── magic.j2
│   │   └── metal3-config.j2
│   ├── tests
│   │   ├── inventory
│   │   └── test.yml
│   └── vars
│   └── main.yml
├── network-discovery
│   └── tasks
│   └── main.yml
├── node-prep
│   ├── defaults
│   │   └── main.yml
│   ├── handlers
│   │   └── main.yml
│   ├── library
│   │   └── nmcli.py
│   ├── meta
│   │   └── main.yml
│   ├── tasks
│   │   ├── 100_power_off_cluster_servers.yml
│   │   ├── 10_validation.yml
│   │   ├── 15_validation_disconnected_registry.yml
│   │   ├── 20_sub_man_register.yml
│   │   ├── 30_req_packages.yml
│   │   ├── 40_bridge.yml
│   │   ├── 45_networking_facts.yml
│   │   ├── 50_modify_sudo_user.yml
│   │   ├── 60_enabled_services.yml
│   │   ├── 70_enabled_fw_services.yml
│   │   ├── 80_libvirt_pool.yml
│   │   ├── 90_create_config_install_dirs.yml
│   │   └── main.yml
│   ├── templates
│   │   └── dir.xml.j2
│   ├── tests
│   │   ├── inventory
│   │   └── test.yml
│   └── vars
│   └── main.yml
├── prepare-kni
│   └── tasks
│   └── main.yml
Expand Down
1 change: 1 addition & 0 deletions ansible-ipi-install/OWNERS
Original file line number Diff line number Diff line change
Expand Up @@ -3,4 +3,5 @@
reviewers:
- dit-reviewers
approvers:
- derekhiggins
- rlopez133
Loading

0 comments on commit 348b396

Please sign in to comment.