Remove whitespace damage

Signed-off-by: Jonathon Anderson <janderson@ciq.com>
This commit is contained in:
Jonathon Anderson
2024-01-21 00:13:25 -07:00
parent 5b0de8ea53
commit 5d6ef1882d
28 changed files with 79 additions and 79 deletions

View File

@@ -33,7 +33,7 @@ body:
```console
$ wwctl <command1>
$ wwctl <command2>
$ journalctl -u warewulfd.service --since
$ journalctl -u warewulfd.service --since
```
- type: textarea
id: information
@@ -69,5 +69,5 @@ body:
Slack](https://warewulf.org/help) first. We have a welcoming community
and chances are you'll get your reply faster and without opening an
issue.
Other than that, thanks for taking the time to contribute to Warewulf!

View File

@@ -39,5 +39,5 @@ body:
Slack](https://warewulf.org/help) first. We have a welcoming community
and chances are you'll get your reply faster and without opening an
issue.
Other than that, thanks for taking the time to contribute to Warewulf!

View File

@@ -61,8 +61,8 @@ runs:
run: |
dist="warewulf-${{ env.TAG }}.tar.gz"
if [[ ! -f "$dist" ]];then
for f in warewulf-*.tar.gz; do
if [[ ! -f "$dist" ]];then
for f in warewulf-*.tar.gz; do
if [[ -e "$f" ]]; then
dist="$f"
break
@@ -103,7 +103,7 @@ runs:
run: |
cat << EOF >> nightly.release.note
THIS IS A NIGHTLY RELEASE
This release contains latest commits, which is a feature unstable version
Reflog:
@@ -132,7 +132,7 @@ runs:
if: inputs.nightly == 'true' && steps.should-continue.outputs.continue == 'true'
uses: tubone24/update_release@v1.3.1
id: release
env:
env:
GITHUB_TOKEN: ${{ inputs.token }}
TAG_NAME: "nightly"
with:

View File

@@ -8,7 +8,7 @@ on:
types: [opened, synchronize, reopened, ready_for_review, labeled, unlabeled]
jobs:
# Enforces the update of a changelog file on every pull request
# Enforces the update of a changelog file on every pull request
changelog:
runs-on: ubuntu-latest
steps:

View File

@@ -8,9 +8,9 @@ on:
jobs:
generate:
name: Generate spec, dist and collect commits info
name: Generate spec, dist and collect commits info
runs-on: ubuntu-latest
outputs:
outputs:
should-continue: ${{ steps.generate.outputs.should-continue }}
version: ${{ steps.generate.outputs.version }}
release-id: ${{ steps.generate.outputs.release-id }}
@@ -68,4 +68,4 @@ jobs:
target: ${{ matrix.target }}
token: ${{ secrets.GITHUB_TOKEN }}
version: ${{ needs.generate.outputs.version }}
event-id: ${{ needs.generate.outputs.release-id }}
event-id: ${{ needs.generate.outputs.release-id }}

View File

@@ -36,7 +36,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
- The network device "OnBoot" parameter correctly configures the ONBOOT ifcfg
parameter. (#644)
- Add support for listing profile/node via comma-separated values. #739
- Sort the node list returned entries by name.
- Sort the node list returned entries by name.
- 'wwctl node edit' inconsistent state with warewulfd. #691
- Add `--parents` option to `overlay import` subcommand to create necessary
parent folder. #608
@@ -59,7 +59,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
- The primary hostname and warewulf server fqdn are now the canonical name in
`/etc/hosts`
- Refactored `profile add` command to make it alike `node add`. #658 #659
- Refactored `profile add` command to make it alike `node add`. #658 #659
- The ifcfg ONBOOT parameter is no longer statically `true`, so unconfigured
interfaces may not be enabled by default. (#644)
- Write log messages to stderr rather than stdout. #768
@@ -72,7 +72,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
* `warwulfconf print` which will print the used `warewulf.conf`. If there is no valid
`warewulf.conf` a valid configuration is provided, prefilled with default values
and an IP configuration derived from the network configuration of the host
- All paths can now be configured in `warewulf.conf`, check the paths section of of
- All paths can now be configured in `warewulf.conf`, check the paths section of of
`wwctl --emptyconf genconfig warewulfconf print` for the available paths.
- Added experimental dnsmasq support.
- fix SIGSEV when build host has no network #907
@@ -118,7 +118,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
- only write IPMI if write is true
- Don't show an error if image files for containers can't be found. #933
- Make configured paths available in overlays as `.Path` #960
- Introduced IPXESOURCE environment variable which allows to specify the path to iPXE
- Introduced IPXESOURCE environment variable which allows to specify the path to iPXE
binaries not provided by warewulf
- use distrubtion ipxe binaries in the rpm
- Allow absolute iPXE paths in warewulf.conf
@@ -126,13 +126,13 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
- Don't panic on malformed passwd #527
- Update iPXE building script
- Send Info, Recv, Send, and Out messages to stdout; and others to stderr
- grub in combination can now be set as boot method with `warewulf.grubboot: true` in
- grub in combination can now be set as boot method with `warewulf.grubboot: true` in
`warewulf.conf`. For unknown nodes `grub.efi` and `shim.efi` will be extracted from
the host running warewulf. If node has container it will get these binaries from the
container image.
- Added support for booting nodes with grub. Enable this behavior using
warewulf.grubboot: true in warewulf.conf. For unknown nodes, grub.efi
and shim.efi are extracted from the Warewulf host. If the booted node
- Added support for booting nodes with grub. Enable this behavior using
warewulf.grubboot: true in warewulf.conf. For unknown nodes, grub.efi
and shim.efi are extracted from the Warewulf host. If the booted node
has a container these binaries are extracted from the container image.
- overlays from different profiles for one node are now merged, overlays can be
excluded with ~ prefix and in listings are listed as !{excluded_profile} #885

View File

@@ -61,13 +61,13 @@ TSC chair: Jonathon Anderson
explain why the dependency is required. Any new dependency should be
added to `LICENSE_DEPENDENCIES.md` by running
`scripts/update-license-dependencies.sh`.
## Documentation
- The [README](README.md) is a place to document critical information
for new users of Warewulf. It should typically not change, but in
the case where a change is necessary a PR may update it.
- The [CHANGELOG](CHANGELOG.md) documents **functional** differences
between versions of Warewulf, and should **not** read like a commit
log.

View File

@@ -24,7 +24,7 @@
* TerranWorks <tdunn3@uco.edu>
* Jonathon Anderson <janderson@ciq.com> @anderbubble
* Brian Phan <bphan@ciq.com>
* Jeffrey Frey @jtfrey
* Jeffrey Frey @jtfrey
* Xu Yang(Jason Yang) <jasonyangshadow@gmail.com> @JasonYangShadow
* Matt Jolly <Kangie@footclan.ninja> @Kangie
* Arnaud LECOMTE <contact@arnaud-lcm.com>

View File

@@ -1,7 +1,7 @@
FROM opensuse/tumbleweed:latest as builder
RUN zypper -n install --no-recommends git go1.18 libgpgme-devel &&\
zypper -n install -t pattern devel_basis
zypper -n install -t pattern devel_basis
# now build the warewulf
COPY . /warewulf-src
@@ -25,7 +25,7 @@ RUN cd /warewulf-src &&\
BASHCOMPDIR=/etc/warewulf/bash_completion.d/ \
FIREWALLDDIR=/usr/lib/firewalld/services \
WWCLIENTDIR=/warewulf &&\
make lint &&\
make lint &&\
make &&\
make install
@@ -40,7 +40,7 @@ COPY --from=builder /var/lib/warewulf /var/lib/warewulf
COPY --from=builder /usr/share/warewulf /usr/share/warewulf
COPY --from=builder /usr/lib/systemd/system/warewulfd.service /container-scripts/warewulfd.service
COPY --from=builder /etc/warewulf /etc/warewulf
COPY --from=builder /warewulf-src/container-scripts /container-scripts
COPY --from=builder /warewulf-src/container-scripts /container-scripts
RUN zypper -n install \
cpio \
@@ -59,7 +59,7 @@ RUN zypper -n install \
zypper clean -a && \
systemctl enable dhcpd && \
systemctl enable tftp.socket &&\
export DHCPDCONF=/etc/sysconfig/dhcpd; test -e $DHCPDCONF && \
export DHCPDCONF=/etc/sysconfig/dhcpd; test -e $DHCPDCONF && \
sed -i 's/^DHCPD_INTERFACE=""/DHCPD_INTERFACE="ANY"/' $DHCPDCONF && \
sed -i 's/^DHCPD_RUN_CHROOTED="yes"/DHCPD_RUN_CHROOTED="no"/' $DHCPDCONF && \
WW4CONF=/etc/warewulf/warewulf.conf; test -e $WW4CONF && \

View File

@@ -11,7 +11,7 @@ Additionally the `warewulf-container-manage.sh` script is included to manage the
## Prepare the host system
It is heavlily advised that the host has a static ipv4 address. To configure this on ALP
It is heavlily advised that the host has a static ipv4 address. To configure this on ALP
you can use `nmcli` with the following command:
```
nmcli connection modify "$(nmcli -t device | awk -F: '/ethernet/{print$4;exit}')" \
@@ -39,7 +39,7 @@ Now the cluster can be managed with the `wwctl` command.
## Remove the Container
The container itself can be remove with the '''label uninstall''' which will remove the container and its scripts from the host.
The container itself can be remove with the '''label uninstall''' which will remove the container and its scripts from the host.
```
# podman container runlabel uninstall registry.opensuse.org/suse/alp/workloads/tumbleweed_containerfiles/suse/alp/workloads/warewlf:latest
```

View File

@@ -26,7 +26,7 @@ network_address() {
}
echo "-- WW4 CONFIGURAION $* --"
# Make sure that a ip address was defined for out network so that
# Make sure that a ip address was defined for out network so that
# we can configure dhcpd correctly
IP4CIDR=`ip addr | awk '/scope global/ {print $2;exit}'`
IP4=${IP4CIDR%/*}
@@ -55,9 +55,9 @@ WW4CONF=/etc/warewulf/warewulf.conf
if [ -e $WW4CONF ] ; then
test -n $IP4 && sed -i 's/^ipaddr: EMPTY/ipaddr: '$IP4'/' $WW4CONF
test -n $IP4MASK && sed -i 's/^netmask: EMPTY/netmask: '$IP4MASK'/' $WW4CONF
test -n $IP4NET && sed -i 's/^network: EMPTY/network: '$IP4NET'/' $WW4CONF
test -n $DYNSTART && sed -i 's/^ range start: EMPTY/ range start: '$DYNSTART'/' $WW4CONF
test -n $DYNEND && sed -i 's/^ range end: EMPTY/ range end: '$DYNEND'/' $WW4CONF
test -n $IP4NET && sed -i 's/^network: EMPTY/network: '$IP4NET'/' $WW4CONF
test -n $DYNSTART && sed -i 's/^ range start: EMPTY/ range start: '$DYNSTART'/' $WW4CONF
test -n $DYNEND && sed -i 's/^ range end: EMPTY/ range end: '$DYNEND'/' $WW4CONF
cat << EOF
ipaddr: $IP4
netmask: $IP4MASK

View File

@@ -16,7 +16,7 @@ BASHCOMPLETION=/usr/share/bash_completion/completions/w*
AUTHKEYDIR=/root/.ssh
echo "LABEL INSTALL"
# ensure all scripts will be present on the host
# ensure all scripts will be present on the host
copy_to_usr_local_bin() {
SCRIPT=$1
BASEDIR=`dirname $SCRIPT`
@@ -44,7 +44,7 @@ fi
sync_dir() {
DIR=$1
test -e /host/${DIR} || mkdir -pv /host/${DIR}
test -e /host/${DIR} && (rsync -au --ignore-existing ${DIR} `dirname /host/${DIR}`; echo "updating $DIR")
test -e /host/${DIR} && (rsync -au --ignore-existing ${DIR} `dirname /host/${DIR}`; echo "updating $DIR")
}
# For podman, cp a systemd unit for starting on boot
@@ -68,7 +68,7 @@ sync_dir $CHROOTDIR
sync_dir $WAREWULFCONF
# bash completion
if [ ! -e /host/etc/bash_completion.d/warewulf ] ; then
if [ ! -e /host/etc/bash_completion.d/warewulf ] ; then
mkdir -p /host/etc/bash_completion.d
cp $BASHCOMPLETION /host/etc/bash_completion.d/
fi

View File

@@ -54,7 +54,7 @@ DEBUG:
run
podman run container '${CONTAINER_NAME}'
bash
bash
go with /bin/bash command inside '${CONTAINER_NAME}'
logs

View File

@@ -14,7 +14,7 @@ RestartSec=1s
TimeoutStopSec=70
#Environment=WAREWULF_IMAGE_PATH=registry.opensuse.org/suse/alp/workloads/tumbleweed_containerfiles/suse/alp/workloads/warewulf:latest
Environment=WAREWULF_IMAGE_PATH=warewulf:latest
ExecStartPre=-/usr/bin/podman container runlabel --name warewulf install ${WAREWULF_IMAGE_PATH}
ExecStartPre=-/usr/bin/podman container runlabel --name warewulf install ${WAREWULF_IMAGE_PATH}
ExecStart=/usr/bin/podman container runlabel --name warewulf run ${WAREWULF_IMAGE_PATH}
ExecStop=/usr/bin/podman container stop warewulf
ExecStopPost=/usr/bin/podman container rm warewulf

View File

@@ -3,7 +3,7 @@ echo "Warewulf v4 now http booting grub: {{.Fqdn}} ({{.Hwaddr}})"
echo "================================================================================"
echo
echo "Warewulf Controller: {{.Ipaddr}}"
echo
echo
sleep 1
smbios --type1 --get-string 8 --set assetkey
uri="(http,{{.Ipaddr}}:{{.Port}})/provision/${net_default_mac}?assetkey=${assetkey}"
@@ -25,7 +25,7 @@ menuentry "Network boot node: {{.Id}}" --id ww4 {
echo "Loading Container: {{.ContainerName}}"
initrd $container $system $runtime
boot
else
else
echo "MESSAGE: This node seems to be unconfigured. Please have your system administrator add a"
echo " configuration for this node with HW address: ${net_default_mac}"
echo ""
@@ -48,4 +48,4 @@ menuentry "System restart" {
menuentry "System shutdown" {
echo "System shutting down..."
halt
}
}

View File

@@ -25,8 +25,8 @@ func Test_List(t *testing.T) {
name: "single node list",
args: []string{},
wantErr: false,
stdout: ` NODE NAME PROFILES NETWORK
n01 default
stdout: ` NODE NAME PROFILES NETWORK
n01 default
`,
inDb: `WW_INTERNAL: 43
nodeprofiles:
@@ -42,7 +42,7 @@ nodes:
args: []string{},
wantErr: false,
stdout: ` NODE NAME PROFILES NETWORK
n01 default
n01 default
n02 default
`,
inDb: `WW_INTERNAL: 43
@@ -62,7 +62,7 @@ nodes:
args: []string{"n01,n02"},
wantErr: false,
stdout: ` NODE NAME PROFILES NETWORK
n01 default
n01 default
n02 default
`,
inDb: `WW_INTERNAL: 43
@@ -82,7 +82,7 @@ nodes:
args: []string{"n01,n03"},
wantErr: false,
stdout: ` NODE NAME PROFILES NETWORK
n01 default
n01 default
n03 default
`,
inDb: `WW_INTERNAL: 43
@@ -111,7 +111,7 @@ nodes:
args: []string{"n01,"},
wantErr: false,
stdout: ` NODE NAME PROFILES NETWORK
n01 default
n01 default
`,
inDb: `WW_INTERNAL: 43
nodeprofiles:

View File

@@ -148,7 +148,7 @@ message ProfileList {
}
// NodeAddParameter contains all input for adding a node to be managed by
// Warewulf. Only adds nodes if the hash matches the actual hash of the
// Warewulf. Only adds nodes if the hash matches the actual hash of the
// configuration.
message NodeAddParameter {
string nodeConfYaml = 1;
@@ -165,7 +165,7 @@ message NodeYaml {
}
// NodeDeleteParameter contains input for removing nodes from Warewulf
// management. If the given hash differs with the actual hash of the
// management. If the given hash differs with the actual hash of the
// configuration, no node is deleted. The force option allows the deletion
// of nodes with a correct hash.
message NodeDeleteParameter {
@@ -323,4 +323,4 @@ service WWApi {
get: "/version"
};
}
}
}

View File

@@ -44,7 +44,7 @@ if exists user-class and option user-class = "iPXE" {
{{range $type,$name := $.Tftp.IpxeBinaries }}
if option architecture-type = {{ $type }} {
filename "/warewulf/{{ basename $name }}";
}
}
{{- end }}{{/* range IpxeBinaries */}}
}
{{- end }}{{/* BootMethod */}}

View File

@@ -106,7 +106,7 @@ booted by GRUB.
.. code-block:: console
# wwctl container shell leap15.5
# wwctl container shell leap15.5
[leap15.5] Warewulf> zypper install grub2 shim
# wwctl container shell rocky9

View File

@@ -5,12 +5,12 @@ Dnsmasq
Usage
=====
As experimental feature its possible to use `dnsmasq` instead of the ISC `dhcpd` server in combination
with a `tFTP` server. The `dnsmasq` service is then acting as `dhcp` and `tftp` server. In order to keep
the file `/etc/dnsmasq.d/ww4-hosts.conf` is created and must be included in the main `dnsmasq.conf` via
As experimental feature its possible to use `dnsmasq` instead of the ISC `dhcpd` server in combination
with a `tFTP` server. The `dnsmasq` service is then acting as `dhcp` and `tftp` server. In order to keep
the file `/etc/dnsmasq.d/ww4-hosts.conf` is created and must be included in the main `dnsmasq.conf` via
the `conf-dir=/etc/dnsmasq.d` option.
Addionally in the configuration file `warewulf.conf` in the sections `dhcp` and `tftp` the systemd name of
Addionally in the configuration file `warewulf.conf` in the sections `dhcp` and `tftp` the systemd name of
dnsmasq must set for the option `systemd name`.
After this configuration steps its recommended to rebuild the host overlay with `wwctl overlay build -H` and

View File

@@ -7,9 +7,9 @@ The examples directory contains some useful examples for day to day cluster admn
Genders
=======
The file `genders.ww` can be placed as `/etc/genders.ww` which will create a genders database which containts all nodes with their profile as key. Also for every user defined 'key' the 'tah' will be added.
The file `genders.ww` can be placed as `/etc/genders.ww` which will create a genders database which containts all nodes with their profile as key. Also for every user defined 'key' the 'tah' will be added.
.. Note:
.. Note:
A arbitrary tag with a key can be added to a node with

View File

@@ -82,12 +82,12 @@ through the following command :
# wwctl node status
NODENAME STAGE SENT LASTSEEN (s)
================================================================================
c001 RUNTIME_OVERLAY generic.img.gz 16
c001 RUNTIME_OVERLAY generic.img.gz 16
For each node, there is 4 different stages :
* **IPXE**
* **IPXE**
* **KERNEL**
* **SYSTEM_OVERLAY**
* **RUNTIME_OVERLAY**
@@ -98,4 +98,4 @@ by the wwclient
Thanks to ``wwctl node status`` command, you can also check your communication between
the warewulf client and server.
Depending on your warewulf version, you should see a reset of the last seen counter every 1 minute due to the
warewulf runtime overlay update.
warewulf runtime overlay update.

View File

@@ -77,9 +77,9 @@ In Warewulf there are ways multiple to secure the provisioning process:
provision and communicate with requests from that system matching
that asset tag.
#. When the nodes are booted via `shim` and `grub` Secure Boot can be
enabled. This means that the nodes only boot the kernel which is
provided by the distributor and also custom complied modules can't
#. When the nodes are booted via `shim` and `grub` Secure Boot can be
enabled. This means that the nodes only boot the kernel which is
provided by the distributor and also custom complied modules can't
be loaded.
Summary

View File

@@ -216,7 +216,7 @@ A given string can be split into substrings.
Node specific files
-------------------
Sometimes there is the need to have specific files for every node
Sometimes there is the need to have specific files for every node
which can't be generated by a template. You can include these files
with following template:

View File

@@ -16,7 +16,7 @@ vet`` on the full codebase.
.. code-block:: console
$ make vet
Running the full test suite
===========================

View File

@@ -132,9 +132,9 @@ Vagrantfile
netmask: "255.255.255.0",
libvirt__network_name: "pxe",
libvirt__dhcp_enabled: false
head.vm.synced_folder ".", "/vagrant", type: "nfs", nfs_version: 4, nfs_udp: false
head.vm.provider :libvirt do |libvirt|
libvirt.cpu_mode = "host-passthrough"
libvirt.memory = '8192'
@@ -176,12 +176,12 @@ Vagrantfile
WWCLIENTDIR=/warewulf
make all
make install
systemctl disable --now firewalld
sed -i 's/SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/config
SHELL
head.vm.provision "reload"
head.vm.provision "shell", inline: <<-SHELL
@@ -238,7 +238,7 @@ Vagrantfile
node.vm.hostname = "n000#{i}"
node.vm.network "private_network",
libvirt__network_name: "pxe"
node.vm.provider :libvirt do |compute|
compute.cpu_mode = 'host-passthrough'
compute.memory = '8192'

View File

@@ -54,7 +54,7 @@ Welcome to the Warewulf User Guide!
.. toctree::
:maxdepth: 2
:caption: Reference
:glob:
:glob:
reference/*

View File

@@ -1,5 +1,5 @@
=====================================
Debian 12 Quickstart
Debian 12 Quickstart
=====================================
@@ -13,8 +13,8 @@ Install the basic services
.. note::
If you get an error message concerning *isc-dhcp-server.service* you
probably need to configure the network intarface that isc-dhcp-server
If you get an error message concerning *isc-dhcp-server.service* you
probably need to configure the network intarface that isc-dhcp-server
will listen to. Run ``sudo dpkg-reconfigure isc-dhcp-server`` and enter
the name of your cluster's private network interface (e.g. enp2s0). After that, you might also need to run ``sudo systemctl enable isc-dhcp-server``.
@@ -25,9 +25,9 @@ Install Warewulf and dependencies
.. code-block:: bash
sudo apt install build-essential curl unzip
sudo apt install git golang libnfs-utils libgpgme-dev libassuan-dev
@@ -94,7 +94,7 @@ address of your cluster's private network interface:
export options: ro,sync,no_root_squash
mount options: defaults
mount: false
systemd name: nfs-server
systemd name: nfs-server
.. note::
@@ -155,7 +155,7 @@ the ``default`` node profile:
.. code-block:: bash
sudo wwctl profile set --yes --container debian-12.0 "default"
Next we set some default networking configurations for the first
ethernet device. On modern Linux distributions, the name of the device
@@ -200,7 +200,7 @@ typing the following:
sudo wwctl node list -a n0000.cluster
To make node changes effective, it is a good practice to update warewulf
To make node changes effective, it is a good practice to update warewulf
overlays with the following command:
.. code-block:: bash