Jarrod Johnson
7cb6b1ac35
Fix autoconsole error on SPCR-free EFI implementations
2025-05-13 16:46:18 -04:00
Jarrod Johnson
315d1d9b5e
Change to common image from text for errors
...
This allows easier management of rendering of text.
Also add a black and white border to make tiling more delineated.
2025-05-13 15:39:40 -04:00
Jarrod Johnson
d382bd5182
Provide cleaner recovery for image decode failure
...
When doing the kitty support with pillow installed,
recover from a condition, creating a stub 'screenshot' to
reflect the error.
2025-05-13 14:23:38 -04:00
Jarrod Johnson
fca0119331
Amend URL shortening
...
302 works for iPXE, but not for more limited UEFI
http client.
If we are dealing with UefiHttpBoot, check for a header
from nginx config and use X-Accel-Redirect to induce proxy side
redirect transparent to client.
Otherwise, give an error indicating the issue with the profile
name length and incompatibility with Apache capabilities.
2025-05-13 11:41:11 -04:00
Jarrod Johnson
a7c338786e
Fix dotted field names in stub formatter
...
The stub formatter was chocking on dotted
key names.
2025-05-09 16:39:45 -04:00
Jarrod Johnson
c892af5a1e
Implement 8 character max for attribute formatting
...
When trying to set a node or group attribute, evaluate
length of any potential formatting specification to keep it under
8 characters.
This should prevent even temporary expansion over 10MB for an attribute
on the way to setting it.
2025-05-09 09:34:19 -04:00
Jarrod Johnson
870cee5ed8
Add public TLS certificates to identitiy images
...
Some profiles may want to have a fixed boot image,
and site specific content limited to the identity payload, or at
least the TLS so it could fetch the rest over https.
2025-05-09 09:11:58 -04:00
Jarrod Johnson
76a66a46e1
Restrict maximum attribute size from formatting
...
If an expression causes an inordinate amount of memory to be
used, then block it from continuing.
For now, we consider that an expression that expands beyond 16k. I
am unable to conceive of a use case where someone would want to
use an expression to derive more than 16k as it stands, as we don't
carry any particularly large opaque payloads right now.
2025-05-08 17:01:35 -04:00
Jarrod Johnson
df354c2f7d
Add some network drivers to cloning/diskless
...
The r8169 enjoys some popularity.
Also, we'd like to be able to try out diskless/cloning with
VMs, so vmxnet3 and virtio_net are handy to round that out.
2025-05-08 11:21:27 -04:00
Jarrod Johnson
5b1492fed8
Restore error message on chassis without location information.
2025-05-06 15:31:03 -04:00
Jarrod Johnson
ca3a53fde4
Provide specific guidance for bad ssh key permissions
2025-05-06 09:51:11 -04:00
Jarrod Johnson
5ab16851ec
Treat '' as equivalent to unset for ipv{}_method
...
Since it's a really difficult distiction between blank
and unset, make sure this is treated the same.
2025-05-06 09:01:43 -04:00
Jarrod Johnson
febccf4d5e
Fix imgutil with el8 diskless
2025-05-06 08:39:53 -04:00
Jarrod Johnson
d0ae7b46ae
Disable the HTML API explorer
...
It may be the case that no one uses it.
2025-05-02 16:21:47 -04:00
Jarrod Johnson
57ada3728c
Change default host to localhost only
...
Also, fix support for IPv4 addresses as bind_host
2025-05-02 16:18:28 -04:00
Jarrod Johnson
89437ee761
Fix Proxmox sample scripts for post/firstboot
2025-05-02 13:19:56 -04:00
Jarrod Johnson
bfadc284b0
Expand documentation of graphical nodeconsole usage.
2025-05-02 08:57:29 -04:00
Jarrod Johnson
fbea510fc1
Have nodeconsole respond to resize
...
When doing the screenshot tiling with interval,
sanely handle resizing the terminal.
2025-05-01 12:13:27 -04:00
Jarrod Johnson
5be99d995a
Fix up VM power handling
...
For both proxmox and vmware, properly model the 'oldstate' feature.
For proxmox, further:
- Wait for power change to actually take effect
- Change reset to a cycle, to help nodesetboot actually work correctly.
2025-05-01 11:44:35 -04:00
Jarrod Johnson
b3ffd632a5
Add proxmox ve example scripts to debian profile
2025-05-01 10:23:42 -04:00
Jarrod Johnson
62988117f1
Another iteration toward debian bookworm support
2025-05-01 09:39:18 -04:00
Jarrod Johnson
71f5ce2b29
Add deployment lock mechanism
...
This allows users to opt into disabling setting further profile changes.
Nodes may be 'unlocked' (normal), 'autolock' (will lock on next
completion), or 'locked' (unable to change the pending OS profile)
2025-05-01 09:25:05 -04:00
Jarrod Johnson
0c0cac140d
Add debian profile material
...
Implement Debian 12 installation
2025-04-30 17:06:20 -04:00
Jarrod Johnson
5cc70846fd
Fix asymmetric ipv4/ipv6 attribute PXE response
...
If a nic were aliased *and* the node had attributes
for ipv6 but used host resolution for ipv4 identity,
it was possible for PXE to pick the wrong way
to respond.
Instruct netutil to specifically consider only the matching family
for the PXE/HTTP boot context
2025-04-30 15:54:46 -04:00
Jarrod Johnson
71f75dbc31
Provide specific error on empty noderanges for expressions
...
For commands such as nodeshell and noderun,
provide a more useful message when a noderange is empty.
2025-04-29 16:13:33 -04:00
Jarrod Johnson
f797ede15f
Handle 503 from a stopped confluent member
...
If a confluent collective member is stopped, then the
HTTPS check passes. If we end up with a 503 indicating
the other end has a missing confluent, fall back to the loop
to check for other living collective members.
2025-04-29 15:44:13 -04:00
Jarrod Johnson
9b3c8e185d
Merge remote-tracking branch 'xcat'
2025-04-29 10:23:20 -04:00
Jarrod Johnson
9fa5278204
Merge pull request #191 from tkucherera-lenovo/nodeconsole
...
document nodeconsole sreenshot feature
2025-04-29 10:22:37 -04:00
Jarrod Johnson
fd4c2686a4
Add telnets support to vmware console
...
This allows the console to be credibly secured,
provided the current host is a node to hold the known hosts...
2025-04-29 10:19:08 -04:00
Tinashe
d4d9b015b8
document nodeconsole
2025-04-29 09:54:43 -04:00
Jarrod Johnson
0b5be68586
Give media bootstrap more of a chance in genesis
...
If the USB is slow to enumerate, keep trying during the network
scan to let the USB have a chance to interject if the network
is unwilling.
2025-04-29 09:53:58 -04:00
Jarrod Johnson
80bf0c9bfa
Clean up a relatively common potential error in XC scan
...
Do not clutter logs with this condition.
2025-04-29 09:53:19 -04:00
Jarrod Johnson
f89cc5863f
Add text console support for Proxmox guests
2025-04-29 09:52:47 -04:00
Jarrod Johnson
6552c90e4d
Clean up busy loop and other oddity with vcenter console
...
Fix it so that common conditions do not
trigger trace logs and busy loops.
2025-04-29 09:52:19 -04:00
Jarrod Johnson
0e8a6038dc
Merge remote-tracking branch 'xcat'
2025-04-28 19:10:37 -04:00
Jarrod Johnson
797b5fc478
Fix proxmox power reporting while off
2025-04-28 19:09:56 -04:00
Jarrod Johnson
4c90d431b6
Add preliminary proxmox node support
2025-04-28 17:17:24 -04:00
Jarrod Johnson
5e87b3ff48
Merge pull request #190 from tkucherera-lenovo/nodeconsole
...
make nodeconsole kill more consistent
2025-04-28 11:00:01 -04:00
Jarrod Johnson
2370cb0b0a
Merge pull request #188 from tkucherera-lenovo/console-redirect
...
remove-consoleredirect
2025-04-28 10:59:18 -04:00
Jarrod Johnson
20b4f46699
Add screenshot ikvm to vcenter plugin
2025-04-27 10:32:28 -04:00
Jarrod Johnson
74355e5220
Implement partial telnet for VMWare
...
The vmware serial support demands more proper
telnet support, provide some support for negotiating
do/don't, will/won't opcodes.
2025-04-25 18:41:01 -04:00
Tinashe
3b46ccb5b1
make nodeconsole kill more consistent
2025-04-25 16:55:25 -04:00
Jarrod Johnson
85249ae71b
Basic VCenter plugin
...
This provides nodeinventory (mac and -s most interestingly),
nodepower, nodesetboot (and by extension, nodedeploy -n),
and nodeconsole (console.method=vcenter).
2025-04-25 13:19:38 -04:00
Jarrod Johnson
0bdcaecf82
Do not include localhost in syncfiles consideration
...
localhost was added to ssh principals, but should not be used
as a candidate in syncfiles.
The syncfileclient should already be filtering this possibility,
but best to filter it everywhere that makes sense.
2025-04-25 08:57:50 -04:00
Jarrod Johnson
b4ef1b484a
Amend syncfiles address selection.
...
A node with private, unroutable addresses relative to
the deployment server may cause the deployment server
to select an unroutable address.
Address this with two strategies.
First, if any of the addresses appear local to the deployment server
networks, prefer those and filter out unroutable.
Secondly, if a node is purely remote, and thus all addresses routable,
then make all the addresses a candidate. However, since the
client can't possibly be using fe80::, we can replace the principal list
with just the clientip, provided it appears in the principal list.
2025-04-25 08:55:10 -04:00
Jarrod Johnson
9f51e256ce
Activate vinz on access if doing collective
...
If a node has not been asked to open any locally managed
video consoles before it was asked to open a peer managed console,
it would fail to start the needed vinz service.
Work around this by detecting that scenario and giving
the vinz subsystem a chance to fix itself.
2025-04-24 08:08:27 -04:00
Jarrod Johnson
1e1b7871cb
Merge pull request #98 from weragrzeda/master
...
NTP servers fix for stateless images for RHEL 7-9
2025-04-24 08:05:55 -04:00
Wera Grzeda
1553af0f41
NTP servers fix for stateless images for RHEL 7-9
...
Node attribute ntp.servers in nodeattrib ca now be used in stateless images
modified: confluent_osdeploy/el7-diskless/profiles/default/scripts/onboot.sh
modified: confluent_osdeploy/el8-diskless/profiles/default/scripts/onboot.sh
modified: confluent_osdeploy/el9-diskless/profiles/default/scripts/onboot.sh
2025-04-24 10:47:38 +02:00
Jarrod Johnson
0c8799f4dd
Favor more utilization of bottom screenshot row
...
When we have the grid size, cut off any extra columns
so long as it doesn't gain a row.
2025-04-23 12:50:44 -04:00
Jarrod Johnson
52b0ae179e
Background console disconnect on node removal
2025-04-23 12:33:40 -04:00
Jarrod Johnson
690980c064
Always specify miimon=100 in networkmanager bonds
...
We already do this for SUSE, it makes sense as a default.
2025-04-23 10:28:42 -04:00
Jarrod Johnson
977d272c56
Fix untiled nodeconsole screenshot
2025-04-23 09:55:45 -04:00
Jarrod Johnson
b5540dd395
Hide cursor during screenshot run
2025-04-23 09:48:54 -04:00
Jarrod Johnson
af1659dafd
Have nodeconsole exit below screenshots
2025-04-23 09:44:10 -04:00
Jarrod Johnson
a69113222f
Fix positioning errors in tiled console display
...
It turns out that specifying height and width explicitly
does not guarantee that the image protocols will actually fill
the specified space. Notably iterm will honor aspect ratio
(which is good), but leave the cursor where the image would
naturally leave it (which is difficult with relative positioning).
Previously, relative positioning was used as a workaround
for the fact that save/restore or any absolute positioning may
be fouled by incurring scroll.
To make cursor save/restore work, we determine the total rows and
print newlines enough to incur scroll and then move cursor back up.
This lets us use save/restore to ignore cursor movement by the image.
2025-04-23 09:34:44 -04:00
Jarrod Johnson
05ffc9da10
Constrain aspect ratio
...
When parceling out the screen real estate, avoid either the height
or the width from getting way out of proportion.
Better to let screen be unused than abuse it to distort the
aspect ratio too much.
2025-04-22 16:01:26 -04:00
Jarrod Johnson
bfdd6a56f6
Add iterm tiling support
...
Also, block sixel attempts, since that is not implemented.
2025-04-22 10:58:25 -04:00
Jarrod Johnson
94af42031e
Provide screenshot tiling with interval support
...
Only for kitty graphics protocol.
Also, attempt to use pillow to convert, if available. Kitty itself
needs this, Konsole can work either way.
It currently does not preserve aspect ratio, to do that
we pretty much need to do some work with pillow.
If we specify just the height, then ratio is preserved, but it won't
honor the designed bounding box on wide screenshots. Also
Konsole won't even honor just one scaling factor.
So the better thing would be to determine the aspect ratio, which
needs pillow.
2025-04-22 10:35:14 -04:00
Jarrod Johnson
0cfdfbdfa4
Add tar.zstd capability
...
zstd is much faster and not too much bigger than xz
2025-04-18 11:19:12 -04:00
Tinashe
999a9c3acf
remove-consoleredirect
2025-04-17 15:34:45 -04:00
Jarrod Johnson
082a20f776
Add mechanism to refresh screenshot in nodeconsole
...
For a single node, provide a way to cleanly
redraw a screen to keep an eye on it.
2025-04-17 10:34:11 -04:00
Jarrod Johnson
69240ef492
Add Fedora 42 scripted install support
2025-04-17 08:30:20 -04:00
Jarrod Johnson
656dea0929
Add error for failure to get screenshot
...
Usually this is due to the target not having a license key,
in the case of Lenovo equipment.
2025-04-16 15:34:06 -04:00
Jarrod Johnson
e46b4ede6d
Implement a CONFLUENT_IMAGE_PROTOCOL env variable
...
This directs CLI with image output to use a preferred protocol.
This is retroactively applied to stats.
Currently we prefer kitty, as it seems to be the most widely supported.
Though some things only support iterm, so that's an option.
And some only support sixel, but the user has to be the one to
figure out adding pysixel dependency.
2025-04-16 12:50:59 -04:00
Jarrod Johnson
9823ffc12d
Fix collective serialization of screenshot messages
2025-04-16 09:46:48 -04:00
Jarrod Johnson
e5da8c01a9
Do not attempt to print non-existent data.
2025-04-15 15:51:12 -04:00
Jarrod Johnson
a138bef551
Do not worry about failure to reply to a SSDP confluent request
2025-04-15 15:40:17 -04:00
Jarrod Johnson
e27f07ac36
Use IPv4 address for ikvm when fe80 is the local bmc
...
The fe80:: is hopeless, try to send ipv4 just in case.
Technically speaking, the user may be using a different address
or real ipv6 and the ipv4 guess might fail, but it probably won't.
2025-04-15 14:25:03 -04:00
Jarrod Johnson
f11473c736
Numerous fixes for shell server
...
On exit, clear the terminal buffer and invalidate the session. This
avoids the web ui being very attached to a closed, dead session, and
leaking stale buffer to a reused sessionid.
For confetty, treat starting a shell session more like starting a
console session.
If an attempt to resize a dead session is attempted,
ignore failures.
2025-04-14 10:25:25 -04:00
Jarrod Johnson
35e3ca1f1f
Have screenshots become normal text
...
Base64 comes out as ASCII bytes, change to text for
json handling.
2025-04-14 07:53:40 -04:00
Jarrod Johnson
6d1da85991
Implement screenshot via nodeconsole -s
...
This will grab screenshots from Lenovo systems and
output them to the console, using the kitty image protocol.
2025-04-11 17:13:19 -04:00
Jarrod Johnson
507e6fa9ac
Ensure bash runs the genesis_bootstrap from media
2025-04-11 16:05:08 -04:00
Jarrod Johnson
e9372a4d34
Provide means for nodeping to use original name on -s
2025-04-11 15:10:28 -04:00
Jarrod Johnson
49ac3487c2
Fix bad indentation in add_local_repositories
2025-04-11 13:23:45 -04:00
Jarrod Johnson
1ec08336e6
Add notation on how to opt out of ubuntu install internet connect
2025-04-11 13:18:41 -04:00
Jarrod Johnson
90f4a2a062
Improve text console behaviors of Ubuntu and RedHat
...
RedHat makes grub redundantly handle serial output that firmware
already handles. If we detect EFI firmware and SPCR ACPI table and
connected serial port, that suggests that firmware will handle.
Ubuntu hates serial console by default, amend it so it can actually
work for serial users.
2025-04-11 12:55:01 -04:00
Jarrod Johnson
1985525cc0
Add all gpgkeys to local repositories
...
gpgkey can take multiple, and better to specify them all instead
of just one.
2025-04-11 12:13:30 -04:00
Jarrod Johnson
9174ad651f
Fallback to mac
...
Some systems do not have UUIDs. Which is unfortunate, but usually
a system mac address does well enough.
2025-04-11 08:38:51 -04:00
Jarrod Johnson
ddf9244514
Correct typo in add_local_repositories
2025-04-09 17:00:56 -04:00
Jarrod Johnson
5e72a8b3c0
Handle reseat with '1a/1b' type bay description
...
This fixes ability to reseat newer chassis when
using the coordinate specification for bay location.
2025-04-09 16:29:57 -04:00
Jarrod Johnson
66265d170a
Catch general reseat errors
2025-04-09 16:06:12 -04:00
Jarrod Johnson
2e60ca13b7
Try to add gpgkey to local repository
...
This is needed for things like followup imgutil
2025-04-09 13:27:29 -04:00
Jarrod Johnson
9744e0d1b0
Accept XCC and BMC for aliases of each other
2025-04-09 12:19:16 -04:00
Jarrod Johnson
7001f0d827
Add encoding for vfat usage in ubuntu genesis
2025-04-09 09:49:10 -04:00
Jarrod Johnson
a6afbeebe0
Merge pull request #185 from Obihoernchen/validvalues_man
...
Show valid values from attributes.py in man pages
2025-04-09 09:13:10 -04:00
Markus Hilger
699efd2f4f
Show valid values from attributes.py in man pages
2025-04-09 03:28:15 +02:00
Jarrod Johnson
5d60a6a427
Fix indentation in pdu module
2025-04-08 14:53:36 -04:00
Jarrod Johnson
672bc73756
Fix for potential hangs on race condition with task exit
2025-04-08 14:10:40 -04:00
Jarrod Johnson
0e3543c4aa
Fix elif clause in module-setup
2025-04-08 10:51:29 -04:00
Jarrod Johnson
43d9fe09cf
Merge remote-tracking branch 'xcat'
2025-04-08 10:44:05 -04:00
Jarrod Johnson
9cc3c96f6a
Fetch fingerprint before credentials
...
Some implementations choose to close the certificate command after
granting user/password. Make sure we get the certificate first.
2025-04-08 10:40:07 -04:00
Jarrod Johnson
b3b852a9e1
Add Ubuntu GUI considerations for genesis
2025-04-08 10:39:35 -04:00
Jarrod Johnson
71ddbb88fc
If doing GUI in Genesis, defer until after udevd
...
udev is needed to run in some scenarios for seatd/sway to
function correctly.
2025-04-08 09:25:19 -04:00
Jarrod Johnson
5df6f9adbf
Merge pull request #184 from tkucherera-lenovo/console-redirect
...
seperate console redirect scripts into oses
2025-04-07 15:19:03 -04:00
Jarrod Johnson
799fff10ff
Handle different locale layouts
2025-04-03 14:58:09 -04:00
Jarrod Johnson
bf03d8dc82
Pull locale file into genesis build
2025-04-03 14:51:58 -04:00
Jarrod Johnson
65760bb678
Break locale to a separate file
2025-04-03 14:49:24 -04:00
Jarrod Johnson
9980414160
Hook gui in genesis build if detected
2025-04-03 14:30:25 -04:00
Jarrod Johnson
5f7a5b18bf
Add Sway to genesis install assets
2025-04-03 14:28:25 -04:00
Jarrod Johnson
53760ac576
More changes to support debian genesis host
2025-04-03 13:11:56 -04:00
Jarrod Johnson
1fa2baacb7
Support debian style lib layout
2025-04-03 13:06:37 -04:00
Jarrod Johnson
b1ba1720b9
Suppress scary message from apiclient when asked to just do -f.
2025-04-02 11:10:33 -04:00
Jarrod Johnson
b21d8b75e0
Incorporate block device into retry loop
...
Have block devices checked for identity information
in a loop with network source search.
Block devices may be delayed for various reasons. The previous method
could be bypassed by fast block device cutting off slow device
enumeration. It also incurred a delay for the network install
case.
2025-04-02 09:50:15 -04:00
Jarrod Johnson
df6818a3cc
Fix refactoring of detect_backend to lldp module
2025-04-01 15:59:02 -04:00
Jarrod Johnson
98add92a20
Correct the path to the api key during ubuntu installation
2025-04-01 15:26:37 -04:00
Jarrod Johnson
85b19acf5f
Fix NXAPI neighbor table API backend
2025-04-01 15:22:36 -04:00
Jarrod Johnson
e5f588d2b7
Fixup work to add nxapi for neighbor api backend
2025-04-01 14:24:59 -04:00
Jarrod Johnson
c8ed877fda
Make clearer api grant errors
2025-04-01 14:05:46 -04:00
Jarrod Johnson
b665365178
Start with esxi7 contents as base for esxi9
2025-04-01 08:18:51 -04:00
Jarrod Johnson
48921c4ef0
Quick scanner to do ssdp scan
2025-03-31 15:12:29 -04:00
Jarrod Johnson
df2c6a4e18
Fix states of absent PSU in NX-API
2025-03-28 17:30:49 -04:00
Jarrod Johnson
92ac49b561
Add NXAPI backend for mac table support.
2025-03-28 17:28:42 -04:00
Jarrod Johnson
2514507b87
Add node operations against Nexus switch
...
This enables the commands to work that one would expect.
2025-03-28 13:34:03 -04:00
Jarrod Johnson
7419dbcf71
Fix unpatched imports of webclient
2025-03-28 09:26:41 -04:00
Jarrod Johnson
659f87877d
Rename the NX-API library
2025-03-28 08:29:18 -04:00
Jarrod Johnson
586261ddca
Fix messed up PSU in nxos
2025-03-27 16:42:28 -04:00
Jarrod Johnson
fc0cc41b90
Commence work on NXAPI support
2025-03-27 16:37:25 -04:00
Tinashe
b596de93a0
seperate into oses
2025-03-27 11:09:25 -04:00
Jarrod Johnson
ce5c1c925e
Adapt to register XCC3
...
Handle XCC3 differences in the register scenario.
2025-03-27 10:00:44 -04:00
Jarrod Johnson
72c030995f
Tolerate errors during register
...
If a condition breaks unicast query, keep going.
2025-03-27 09:50:19 -04:00
Jarrod Johnson
4677f2c806
Bump genesis version for next release
2025-03-25 11:20:58 -04:00
Jarrod Johnson
401ac50730
Merge remote-tracking branch 'xcat'
2025-03-25 11:20:40 -04:00
Jarrod Johnson
249ed5d9be
Add script to try to sort out extra license material
2025-03-25 11:19:38 -04:00
Jarrod Johnson
c29c9d5c47
Merge pull request #183 from stoderica/esxi7_fix
...
Modify apiclient utility, for esxi7 only, to check if the uplink of v…
2025-03-25 07:54:34 -04:00
Sorin Toderica
62e081cd72
Modify apiclient utility, for esxi7 only, to check if the uplink of vSwitch0 is up and if not, to try to replaces it with a different vmnic, that is up
2025-03-25 09:50:40 +02:00
Jarrod Johnson
1cf2a5339a
Move sftp server to a more appropriate location
2025-03-24 16:34:51 -04:00
Jarrod Johnson
5ab02c31ee
Add python 3.13 option for genesis
2025-03-24 16:34:15 -04:00
Jarrod Johnson
21f4d2e5c2
Remove opa from genesis
2025-03-24 16:29:51 -04:00
Jarrod Johnson
fae266bf61
Refresh genesis for 3.13 release
2025-03-24 16:28:36 -04:00
Jarrod Johnson
84881cc6be
Fix invoke to a file to not repeat the request
2025-03-21 09:12:57 -04:00
Jarrod Johnson
24e419568a
Remove spurious output from stdout log
2025-03-21 09:12:41 -04:00
Jarrod Johnson
e375c956ed
Provide command line access to the updatestatus
2025-03-20 09:32:30 -04:00
Jarrod Johnson
f6e9691b7f
Amend arguments on IPv4 invocation
...
It turns out that when busybox invokes openssl for
IPv4, it does not pass a servername field.
In this case, start amending arguments after '-verify' instead, to catch
the verify_ip argument correctly.
2025-03-20 08:21:47 -04:00
Jarrod Johnson
5fb04126e6
Fix tracking of 'active' updates in update status
2025-03-19 16:43:19 -04:00
Jarrod Johnson
02bd26e7d2
Correct updatestatus to be resource, not collection
2025-03-19 16:17:31 -04:00
Jarrod Johnson
3a9b75839b
Add another error code for XCC user rename refusal
...
Yet another error to reperesent rename refusal
2025-03-19 16:08:42 -04:00
Jarrod Johnson
29915acaeb
Provide API to query update readyness
2025-03-19 15:31:51 -04:00
Jarrod Johnson
ef68259745
Provide more full fixup of openssl invocation in wget
...
For IPv4 and IPv6, strip the ':443' for arguments where it doesn't make sense.
For IPv6, strip out [, ], and '%' from those arguments.
2025-03-19 12:41:50 -04:00
Jarrod Johnson
e25b3acd98
Fix onboot.d in genesis profiles
2025-03-19 09:41:21 -04:00
Jarrod Johnson
1e463367fe
Switch Ubunut initramfs to ssl
...
The busybox wget invocation of openssl is broken.
Override by stubbing it out to let openssl pick the verify
hostname instead of wget specified one, which is incorrect.
2025-03-18 15:52:37 -04:00
Jarrod Johnson
7d83a920a2
Add mechanism for configurable ikvm response
...
This allows for more flexible ikvm handling with newer pyghmi.
2025-03-13 15:59:10 -04:00
Jarrod Johnson
6402861f4c
Provide custom node secret attributes
...
This allows for confluent to pass node secret data through.
2025-03-13 14:22:26 -04:00
Jarrod Johnson
0205f70d5a
Merge pull request #182 from tkucherera-lenovo/eventlog
...
handle empty timestample
2025-03-13 10:22:39 -04:00
Jarrod Johnson
58608016c4
Add wait for disk bringup to allow media based co-opt of genesis
2025-03-12 13:23:00 -04:00
Tinashe
7d7baf0f77
handle empty timestample
2025-03-12 12:51:42 -04:00
Jarrod Johnson
9123d2f2e0
Add ability to post bodys to HTTP requests
2025-03-11 15:35:35 -04:00
Jarrod Johnson
9cecaab055
Fix confluent server identification using -s instead of file
2025-03-11 15:04:36 -04:00
Jarrod Johnson
9136341bda
Tolerate different proxy pass configurations
...
The stock reverse proxy configuration strips the leading
'/confluent-api/' from the URL.
However, when doing a custom reverse proxy set up, one may preserve full
path without knowing which way to go.
Since '/confluent-api/' will never be used inside the api, just strip
it when detected to tolerate either of the likely proxy pass behaviors.
2025-03-11 11:38:05 -04:00
Jarrod Johnson
d2011261ab
Enable creation of bond and dependent tags in one iteration
...
Have a second pass to check interfaces that may
be created by the first pass.
2025-03-11 09:58:51 -04:00
Jarrod Johnson
060b81e205
Fix documentation error in attributes
2025-03-11 08:39:28 -04:00
Jarrod Johnson
1f97a5e67d
Add a Makefile for building
2025-03-07 18:01:55 -05:00
Jarrod Johnson
13a6493100
Add a general utility for confluent in golang
2025-03-07 17:16:13 -05:00
Jarrod Johnson
28c929aec6
Have a draft apiclient in golang
2025-03-05 17:14:55 -05:00
Jarrod Johnson
b4b011663e
Handle more forms of confluent headers
...
Some frameworks won't allow headers through, normalize case
and normalize _ presence.
2025-03-05 17:14:28 -05:00
Jarrod Johnson
defd41488e
Merge remote-tracking branch 'xcat/master'
2025-03-05 13:13:55 -05:00
Jarrod Johnson
95952b5231
Detect active nic in multi-nic BMC discovery
2025-03-05 13:13:34 -05:00
Jarrod Johnson
857854a6e9
Merge pull request #179 from Obihoernchen/yaml
...
Implement YAML support for confluentdbutil (fixes #152 )
2025-03-05 11:43:18 -05:00
Markus Hilger
e5b1b5d3a0
Implement YAML support for confluentdbutil ( fixes #152 )
2025-03-05 17:42:31 +01:00
Jarrod Johnson
c26936a2d7
Merge pull request #180 from Obihoernchen/fqdnfirst
...
Support FQDN first (Fix #167 )
2025-03-05 11:35:36 -05:00
Jarrod Johnson
80ea0b3e91
Merge pull request #181 from tkucherera-lenovo/console-redirect
...
modify redirection code for rhel
2025-03-05 11:31:01 -05:00
Tinashe
1bfad11ee5
remove-mkconfig
2025-03-05 11:19:34 -05:00
Tinashe
7b4063a42f
modify redirection code for rhel
2025-03-05 11:12:31 -05:00
Markus Hilger
2bc347fc2a
Support FQDN first ( Fix #167 )
2025-03-05 04:17:45 +01:00
Jarrod Johnson
f458c15677
Correct launching of GUI in genesis
2025-03-04 16:11:28 -05:00
Jarrod Johnson
02ec40092e
Have genesis optionally GUI capable
...
Have Genesis work with newer distribution base, also support seatd/sway when
genesis contains it.
2025-03-04 15:12:59 -05:00
Jarrod Johnson
cea87d012c
Fix missing import from prepfish example.
2025-03-04 10:51:02 -05:00
Jarrod Johnson
c73352a293
Add filter for bmc interface
...
People have been putting the BMC interface as
a net section, to aid in their information
and confluent2hosts.
Tolerate that by dropping net entries that match the
hardwaremanagement.manager attribute.
2025-03-04 10:50:48 -05:00
Jarrod Johnson
f06d9a81e7
Have sshd only generate ed25519 during initramfs phase of diskless.
...
sshd-keygen service will come later with other keys, if desired.
2025-03-04 10:04:30 -05:00
Jarrod Johnson
0d4da78f05
Add certificate handling to prepfish.py
2025-03-03 10:51:10 -05:00
Jarrod Johnson
44a30686cb
Add Fedora 41 scripted install support
2025-02-28 08:53:26 -05:00
Jarrod Johnson
596dca5d48
Merge pull request #178 from henglikuang/master
...
add a loop to find the accessible deployer when the method is not static
2025-02-28 06:36:07 -05:00
Hengli Kuang
75a0f44a36
add a loop to find the accessible deployer when the method is not static
2025-02-28 13:53:28 +08:00
Jarrod Johnson
bde03f4595
Merge remote-tracking branch 'xcat'
2025-02-25 15:30:13 -05:00
Jarrod Johnson
f62c0db678
Remove ssh_config directive not supported by EL7wq
2025-02-25 15:29:22 -05:00
Jarrod Johnson
132824ede5
Merge pull request #176 from tkucherera-lenovo/configbmc
...
Configbmc
2025-02-25 13:57:28 -05:00
Tinashe
a595abe9e6
also allow users to just specify lom and we use the first port
2025-02-25 12:13:18 -05:00
Tinashe
11d63a4b5c
allow users to choose which lom port to use for bmc shared mode
2025-02-25 11:00:16 -05:00
Jarrod Johnson
67bacc9934
Add sample script for bringing up a host interface
2025-02-21 15:25:41 -05:00
Jarrod Johnson
3a3f3a961d
Add SMM3 to chained SMM logic
2025-02-20 15:42:49 -05:00
Jarrod Johnson
5fda02b9e0
Repeat NIC check loop on Ubuntu 18.04 deployments
2025-02-20 12:54:55 -05:00
Jarrod Johnson
825cacde0e
Fix relay dhcp behavior
...
The refactor for multiple nics on same vlan omitted
a required parameter.
2025-02-12 09:52:23 -05:00
Jarrod Johnson
e87d6652ca
Fix type of height when pulled from attributes
...
location.height was left as string, which fouled
further processing.
2025-02-11 08:35:43 -05:00
Jarrod Johnson
76d4556501
Add a go version of genpasshmac
2025-02-07 10:19:54 -05:00
Jarrod Johnson
543a42edd6
Disable SELinux policy in EL diskless images
...
The SELinux policies do not currently work in a diskless
build, disable by default, though a user may try to enable
it manually after build.
2025-02-06 16:30:06 -05:00
Jarrod Johnson
82fe75e457
Add aliases to attrib clear
...
Support aliases when specified in clearing.
2025-02-06 15:59:29 -05:00
Jarrod Johnson
9b59c2fadb
Have httpapi support multiple shell sessions
2025-02-06 13:25:39 -05:00
Jarrod Johnson
52497d7d95
Broaden except clause on automation check
...
For whatever reason, we can't seem to specifically catch
the CalledProcessError and have to resort to generic Exception.
2025-02-06 10:44:59 -05:00
Jarrod Johnson
2fcfbe9774
Fix multi-session access to shell
...
Shell sessions are now wired up to vtbufferd
The shellserver now correctly accounts for sessions being started.
The sockapi now correctly allows the client to specify/attach
to a specific session id.
2025-02-05 16:57:26 -05:00
Jarrod Johnson
564e136dc5
Always provide a badreadings output, even if empty
2025-02-04 09:11:53 -05:00
Jarrod Johnson
b9f4051396
Export variables set in confluent functions
2025-02-03 16:40:57 -05:00
Jarrod Johnson
e901559644
Add mechanism to explicitly ignore nics for netboot
...
A service.cfg configuration can be applied to ignore nics for netboot
# cat /etc/confluent/service.cfg
#[http]
#bindhost = /var/run/confluent/httpapi
[netboot]
ignorenics=enp65s0f1np1,enp65s0f3np3
2025-01-30 15:25:10 -05:00
Jarrod Johnson
e536789c9d
Mitigate send of duplicate replies
...
If an unrelated network interface shares a vlan with an otherwise
pertinent interface, defer and be silent to avoid confusion on the line.
2025-01-30 14:27:42 -05:00
Jarrod Johnson
7493cc5d48
Normalize enclosure handling
2025-01-30 09:37:10 -05:00
Jarrod Johnson
0fadb00acf
Pass through slot geometry if provided
2025-01-30 08:03:36 -05:00
Jarrod Johnson
b89ae4d74a
Fix bytes being stored in db on identity image use
2025-01-27 12:58:42 -05:00
Jarrod Johnson
79d5a637a7
Correct syntax error in confignet
2025-01-24 11:12:25 -05:00
Jarrod Johnson
67aaee3b4e
Adapt to the bond modes
...
When the team modes were defined in attributes, it was based on the
teamd names. Since the ecosystem abandoned teamd, we went back to
bond.
However, we neglected to map all the names to the closest bond type equivalent.
Change confignet to do the mapping.
2025-01-24 07:58:31 -05:00
Jarrod Johnson
e3d70f351d
Provide internal URL shortening service
...
Permit users to have very long profile names, and provide
a URL shortening service to bridge the gap for fixed-width
field limitations in DHCP/PXE.
2025-01-22 15:44:49 -05:00
Jarrod Johnson
2f33aa5d83
Merge pull request #174 from tkucherera-lenovo/l2traceroute
...
l2traceroute
2025-01-22 15:30:14 -05:00
Tinashe
d4fbd021ad
l2traceroute
2025-01-22 09:49:46 -05:00
Jarrod Johnson
24f0ff5221
Add scripts to adopt a node to confluent SSH
2025-01-21 16:48:42 -05:00
Jarrod Johnson
fb8675ddc5
Fix SMM3 discovery by switch
2025-01-21 10:10:40 -05:00
Jarrod Johnson
cdfb76de57
Try alternate invocation for handshake
...
Newer versions of websocket change internal call, and we must follow.
This is a consequence of the library providing no means to customize the
TLS handling, so we have to dig in a little to get that customization.
2025-01-14 08:59:24 -05:00
Jarrod Johnson
32bc5afe03
Generate error on node/group misdeletion
...
If requesting to delete a group from a node when that node is
not a member of that group, generate an error.
Similarly to delete a node from a group.
2025-01-13 12:07:39 -05:00
Jarrod Johnson
e2bb72cc14
Allow Unix socket for http socket
...
If service.cfg has:
[http]
bindhost = /var/run/confluent/httpapi
Then it will use the cited path to create a unix socket instead
of a network socket.
2025-01-08 15:59:48 -05:00
Jarrod Johnson
0cae0fe06e
Add installtodisk support for el9 diskless images
2024-12-13 19:04:15 -05:00
Jarrod Johnson
cd2509c485
Ignore unparseable net config files
...
If some pre-processing has rendered config files
unparseable, ignore the file as we can't intelligently rewrite
those.
2024-12-13 16:16:12 -05:00
Jarrod Johnson
8e0bc43008
Fix for SMMv3 onboarding
2024-12-13 16:15:23 -05:00
Jarrod Johnson
ddd97388a6
Implement discovery for newer SMMv3 firmware
2024-12-11 10:22:10 -05:00
Jarrod Johnson
2c9b526de4
Repeat the interface loop for Ubuntu identity deploy
...
It may happen that the first pass at nics misses
a viable network interface due to slow link up
or slow spanning tree forwarding.
Repeat the loop through the interfaces to have follow
up chances at success.
2024-12-05 14:26:26 -05:00
Jarrod Johnson
5d6a935bec
Bump genesis version
2024-12-05 10:21:12 -05:00
Jarrod Johnson
23cb1fa8ab
Refresh genesis license handling
2024-12-05 10:18:16 -05:00
Jarrod Johnson
5f90aa4f69
Add SMMv3 handler for SMMv3 discovery
2024-12-03 15:00:10 -05:00
Jarrod Johnson
64895c9f95
Return empty hifurl list when non existent
...
For systems without a host interface,
properly show an empty list.
2024-12-03 14:55:50 -05:00
Jarrod Johnson
8bdabdc962
SMMv3 discovery support
...
The SMMv3 doesn't respond to the correct SSDP service, add the
odd service.
Have SMMv3 use the standard redfish handler.
Augment the standard redfish handler to deal with non-error
password change required message.
2024-12-03 14:34:11 -05:00
Jarrod Johnson
3fa6b47995
Do not json dumps a string that is already json
2024-12-02 16:50:13 -05:00
Jarrod Johnson
f1f433041c
Restore underscore headers
...
Eventlet has "helpfully" stopped supporting headers with
underscores. Restore them since we want to support
backwards compatibility and do not have the option to
just ignore existing clients.
2024-11-26 12:09:04 -05:00
Jarrod Johnson
ebecc9c844
Merge pull request #170 from tkucherera-lenovo/webauth_update
...
use webauthn instead of webauthn-rp
2024-11-19 10:38:24 -05:00
Tinashe
ff523a0d5c
change the server spec file
2024-11-19 10:10:02 -05:00
Tinashe
efda4b4ef7
remove LICENCE,VERSION and devel prints
2024-11-19 10:08:56 -05:00
Tinashe
8e89c8f622
use webauthn instead of webauthn-rp
2024-11-19 09:39:29 -05:00
Jarrod Johnson
a0ffc11d6f
Expand type for GUI usage
2024-11-15 09:24:04 -05:00
Jarrod Johnson
9c589e8352
Regenerate initrd after install
...
The drivers on target may differ from source, regenerate initramfs to allow for booting
2024-11-15 09:19:51 -05:00
Jarrod Johnson
f88e9ecebf
Support discovery through second XCC NIC
2024-11-14 08:03:34 -05:00
Jarrod Johnson
2f3a8619e8
Fix vinz VNC for non-root users
...
Relax permissions a tad to allow users to attempt
to connect if they otherwise know the socket name.
2024-11-12 16:16:47 -05:00
Jarrod Johnson
5df30881f8
Provide resource to check if http has been initialized
...
This allows clients to know if they need to direct user to do
early setup procedures.
2024-11-11 15:31:12 -05:00
Jarrod Johnson
b1f8cf8f12
Avoid redrawing 'powered off' redundantly.
...
If the power state stays the same between queries, take no action to clear screen and
draw redundant data.
In the case of misreporting devices, it mitigates the impact of incorrect reporting,
while generally preserving the output behavior when accurate.
2024-11-11 13:51:10 -05:00
Jarrod Johnson
d8c633a7d5
Add localhost to ssh principals/equiv
...
It shouldn't be possible to hijack localhost, so
allow such addresses to be principaled and be listed in equiv.
2024-11-11 08:03:57 -05:00
Jarrod Johnson
523d5920bc
Add a sample script for grabbing XCC screenshots
2024-11-08 12:10:15 -05:00
Jarrod Johnson
9b6204db4f
Switch to the type of the member interface
...
The 'team-slave/bond-slove' type is unneccesary, and
messes up with infiniband.
NetworkManager gets the idea if the 'ethernet' is a bond member without being told explicitly.
2024-10-28 13:21:54 -04:00
Jarrod Johnson
a298ef8d74
Catch OpenBMC disconnects and handle them better
2024-10-28 09:41:38 -04:00
Jarrod Johnson
008c1308b4
Handle nvm subsystem without driver.
...
A variant of the M.2 RAID enablement kit does not manifest with nvme
driver. Address this by allowing 'nvm' subsystype. to allow blank driver.
Also, to be on the safe side, have self.driver always be a string,
so it can be 'falsey' but still work as a string.
2024-10-26 08:16:56 -04:00
Jarrod Johnson
b46a1e14a3
Fix video console when first run has multiple nodes
...
If client requested more than one on a fresh confluent run,
then only one of the video consoles would properly wait.
Fix by wrapping the assure in a startingup check.
2024-10-25 12:11:58 -04:00
Jarrod Johnson
a46bcfa2b5
Add CentOS Stream 10 and Alma Kitten 10
...
Similar to 9, but now hooks must be in /var instead of /usr
2024-10-25 09:52:10 -04:00
Jarrod Johnson
773cab8189
Merge pull request #169 from tkucherera-lenovo/Staging
...
enable ability to clean up assets
2024-10-22 13:41:28 -04:00
tkucherera
ab0f48f351
enable ability to clean up assets
2024-10-22 12:05:23 -04:00
Jarrod Johnson
b99e4c94a0
Add Enlogic PDU support
2024-10-17 14:56:19 -04:00
Jarrod Johnson
3560415668
Update attribute inheritance on rename
2024-10-16 11:40:00 -04:00
Jarrod Johnson
81b57d5db6
Avoid potential endless recursion
...
If we are detaching, skip reattach in scenario
that leads to infinite recursion.
2024-10-10 16:22:58 -04:00
Jarrod Johnson
b05b36484b
Fix file staging in http api
2024-10-10 12:52:28 -04:00
Jarrod Johnson
3a0218c421
Simplify profile label outside of bootloader
2024-10-07 13:51:55 -04:00
Jarrod Johnson
84c119ce3d
Reduce mandatory newlines between textgroup output
2024-10-04 09:19:19 -04:00
Jarrod Johnson
910af18a00
Fix http websockify
2024-09-30 13:57:09 -04:00
Jarrod Johnson
3ad53a3aac
Fix client file staging
...
Skip read during httpapi, and inject sleep between file transfer chunks.
2024-09-27 15:30:59 -04:00
Jarrod Johnson
2fa56f4a38
Merge remote-tracking branch 'xcat/master'
2024-09-26 07:56:17 -04:00
Jarrod Johnson
7793de39b4
Merge pull request #165 from Obihoernchen/nodensensors-help
...
Fix nodesensors --skipnumberless help text
2024-09-26 07:54:24 -04:00
Markus Hilger
a3212d7603
Fix nodesensors --skipnumberless help text
2024-09-26 13:19:21 +02:00
Jarrod Johnson
ed2a8b6f9d
Provide an example to name constrain a CA
...
It's imperfect, and abetter procedure should be written up
for the more security conscious.
2024-09-23 10:45:31 -04:00
Jarrod Johnson
71a83ac39c
Try for more DNS lookups
...
Try to hit likely DNS names, or at least provide a means
of manipulating /etc/hosts to induce
a good domain for the default certificate SAN fields.
Note putting the FQDN first in /etc/hosts will get the FQDN in the
certificate.
2024-09-20 18:34:02 -04:00
Jarrod Johnson
a8df3692b6
Persist passkeys as text
...
confluentdbutil and collective would choke
on the binary. Have the binary bits be
safely converted to/from base64.
2024-09-20 17:26:02 -04:00
Jarrod Johnson
65ae52782e
Merge pull request #164 from tkucherera-lenovo/webauth_update
...
remove hardcorded values
2024-09-19 16:29:33 -04:00
tkucherera
936153490a
remove hardcorded values
2024-09-19 16:21:39 -04:00
Jarrod Johnson
f19234419d
Implement non-root ssh for SUSE diskless
2024-09-19 13:15:10 -04:00
Jarrod Johnson
787e8b95c0
Merge pull request #163 from tkucherera-lenovo/webauth_update
...
fix minor bugs and code clean up
2024-09-18 16:30:58 -04:00
tkucherera
9bce0de93d
fix minor bugs and code clean up
2024-09-18 16:22:09 -04:00
Jarrod Johnson
dbfb800c1b
Fix regression in pyghmi dependency version
2024-09-12 13:26:15 -04:00
Jarrod Johnson
942bbd1c69
Merge pull request #154 from tkucherera-lenovo/webauthn
...
Webauthn
2024-09-12 13:25:15 -04:00
Jarrod Johnson
bd37b1746d
Merge pull request #136 from tkucherera-lenovo/firwareUpdateServer
...
Firware update server
2024-09-12 13:24:29 -04:00
Tinashe Kucherera
5609d4fe4b
Merge branch 'master' into firwareUpdateServer
2024-09-12 11:44:22 -04:00
Tinashe Kucherera
c2abe7c4cd
Merge branch 'master' into webauthn
2024-09-12 11:40:20 -04:00
Jarrod Johnson
78dc6e31d7
Merge pull request #133 from tkucherera-lenovo/staging
...
Staging
2024-09-12 11:38:49 -04:00
Tinashe Kucherera
bbc032056e
Merge branch 'master' into firwareUpdateServer
2024-09-12 10:37:34 -04:00
Tinashe Kucherera
304d0b5dce
Merge branch 'master' into staging
2024-09-12 10:29:52 -04:00
tkucherera
d553ab864b
resolve merge conflicts
2024-09-12 10:27:05 -04:00
tkucherera
db381d377b
account for timeout
2024-09-12 10:10:53 -04:00
Jarrod Johnson
7da3944b2b
Allow blink for ipmi
...
OEM IPMI may now do blink
2024-09-11 09:13:30 -04:00
Jarrod Johnson
8704afcee5
Add glue to confluent api from vinzmanager
2024-09-10 11:28:00 -04:00
Jarrod Johnson
0fb19ce263
Wire up http sessions to vinzmanager
2024-09-06 13:41:50 -04:00
Jarrod Johnson
c048439849
Reuse existing vinz unix session for a node
2024-09-05 11:44:29 -04:00
Jarrod Johnson
f8715f4cb1
Implement logout on disconnect notification for vinz
2024-09-05 11:42:52 -04:00
Jarrod Johnson
d17d5341f1
Imprement basic vinz management
2024-09-04 19:16:41 -04:00
Jarrod Johnson
2c76d94a6d
Vary version for debian build process
2024-09-04 12:13:40 -04:00
Jarrod Johnson
7c8f85eb06
Handle python mangling of filename consistently for rpm build
2024-09-04 10:53:05 -04:00
Jarrod Johnson
ee067fa3c0
Cleanup stray debian content in apt
2024-09-04 10:27:00 -04:00
Jarrod Johnson
4a2e943f84
Update osdeploy rpms to new version scheme for snapshots
2024-09-04 10:19:11 -04:00
Jarrod Johnson
97e29a5655
Change versioning to consistently produce prerelease consistent with rpm and deb
2024-09-04 10:11:47 -04:00
Jarrod Johnson
cb67c83287
iAttempt to be consistent with ~ prerelease versioning
...
We may not know where we are going, but at least bump the minor number.
Ultimately we may not be building toward that number, or that number will be used in a different branch, but it
can at least handle more cases
2024-09-04 08:11:42 -04:00
Markus Hilger
e11c3516e9
Create README.md ( #162 )
2024-09-03 12:25:15 -04:00
Jarrod Johnson
1f6987bafc
Fix nodedeploy -c with profile
...
Remove vestigial statement near end, and put an up front
clarification to a user trying to use both '-c' and a
profile on the same command line.
2024-08-31 07:28:51 -04:00
Jarrod Johnson
f4f5b4d1b6
Suppress bad gateway warning if the client ip is unknown
...
In a scenario where we are doing the 'next-server' next to a real dhcp server,
but through relay, the missing gateway would be expected.
Rely on the final message about 'no address' as the clue to users
that something went wrong on the node side.
2024-08-29 08:57:39 -04:00
Jarrod Johnson
fd301c609f
Add additional log data to relaydhcp
2024-08-29 08:51:22 -04:00
Jarrod Johnson
53b9a13a51
Fix different invocations of check_fish
...
Particularly nodediscover register can fail.
Those invocations are XCC specific, so the targtype should not matter
in those cases.
2024-08-28 19:19:39 -04:00
Jarrod Johnson
cd91ed0b94
Fix escape warning on newer python
2024-08-27 15:55:54 -04:00
Jarrod Johnson
4dc54b92d5
Correct nodeconsole syntaxwarning
2024-08-27 11:35:39 -04:00
Jarrod Johnson
08a3a0ee76
Correct wrong pyghmi version in dependencies
2024-08-27 10:43:47 -04:00
Jarrod Johnson
b601cd97c7
Bump pyghmi to a higher explicit version
2024-08-27 10:36:30 -04:00
Jarrod Johnson
1d80e2703c
Add extended nodeconfig to confluent redfish
2024-08-27 09:59:16 -04:00
Jarrod Johnson
7304c8e3b7
Fix LLA request for deploycfg
...
If a client uses IPv6 LLA, the '%' location may slip in.
In such a case, disable client ip matching, since fe80::
is useless for that anyway.
2024-08-26 16:51:35 -04:00
Jarrod Johnson
d84a76dbc6
Fix -a and -e nodeconfig
2024-08-26 10:01:24 -04:00
Jarrod Johnson
4f1b6b1fac
Add extra_advanced to core resource tree.
2024-08-26 09:42:44 -04:00
Jarrod Johnson
77c5b70ad9
Wire up '-a -e' for nodeconfig
2024-08-26 09:34:58 -04:00
Jarrod Johnson
c7d87b755a
Add logic to get remote deployers locked into current nic
2024-08-23 18:02:15 -04:00
Jarrod Johnson
f0c5ac557f
Fix and extend Relay DHCP Support
...
Relay DHCP support needed better logging and behavior.
It had also broken non-relay clients.
2024-08-23 13:54:27 -04:00
Jarrod Johnson
5d4f0662d1
Fix add_local_repositories for routed IPv4
...
Routed IPv4 deployment is not guaranteed to have
an IPv6 server. In this case the safer bet is
to try to just accept the IPv4 anyway.
2024-08-23 07:06:37 -04:00
Jarrod Johnson
edc3a3e9f3
Have confignet fallback to unicast per deploycfg
...
In routed deployments, the scan mechanism
will not be available. Fall back to routed
access to the deploy server as indicated
by deploycfg from install time.
2024-08-22 16:39:52 -04:00
Jarrod Johnson
3d53b76317
Fix relay replies being broadcast instead of unicast
2024-08-22 14:54:48 -04:00
Jarrod Johnson
683a160c20
Amend mistake in parameter name
2024-08-22 10:25:15 -04:00
Jarrod Johnson
82be3c91d5
Add support for relay DHCP
...
Use the relay DHCP agent information as basis for
subnet comparison instead of self, when present.
Use the candidate prefix length verbatim since the
relay will offer no hint as to the 'proper' prefix
length for the target segment.
2024-08-22 10:20:04 -04:00
Jarrod Johnson
9cf199a53e
Merge pull request #160 from Obihoernchen/typo
...
Fix small typo
2024-08-22 08:42:06 -04:00
Markus Hilger
e735a12b3a
Fix small typo
2024-08-22 12:38:52 +02:00
Jarrod Johnson
cbd457b464
Cancel the recvr task on close
...
This avoids stail recvr from sending duplicate data.
2024-08-21 09:12:18 -04:00
Jarrod Johnson
dd2119c6d9
Ignore very old ssh key file
2024-08-19 16:26:48 -04:00
Jarrod Johnson
4640cb194f
Provide workaround for XCC refusal to rename the initial account
2024-08-19 13:28:49 -04:00
Jarrod Johnson
fb10221e1b
Amend affluent error handling
...
Be more consistent and informative
2024-08-16 11:26:52 -04:00
Jarrod Johnson
d82a982857
Have affluent 'power' status actually at least reaching the service
2024-08-16 10:52:00 -04:00
Jarrod Johnson
e6f6919ef4
Merge pull request #96 from weragrzeda/master
...
i reverted NTP and Eaton, Only Geist PDUs merging
2024-08-16 09:33:01 -04:00
Jarrod Johnson
1a40842f06
Fix osdeploy updateboot to find multiple grub.cfg
2024-08-15 10:54:52 -04:00
Jarrod Johnson
82e0d9c434
Rework ssh key init to reset key and use context management
2024-08-14 16:08:02 -04:00
Jarrod Johnson
83a4df49c7
Merge pull request #159 from adrianreber/2024-08-13-cat-keys
...
Do not overwrite the node SSH key with the last found public key
2024-08-14 16:04:36 -04:00
Jarrod Johnson
c442c8704d
Merge remote-tracking branch 'xcat/master'
2024-08-14 11:41:09 -04:00
Jarrod Johnson
28b88bdb12
Add reporting of skipped nodes in a 'skip' merge
2024-08-14 11:40:11 -04:00
Jarrod Johnson
29d0e90487
Implement confluentdbutil 'merge'
...
For now, implement 'skip', where conflicting nodes/groups are
ignored in new input.
2024-08-14 11:26:51 -04:00
Adrian Reber
a6a1907611
Do not overwrite the node SSH key with the last found public key
...
Instead of overwriting the SSH public code for the node concatenate all
found SSH keys together in one file.
Signed-off-by: Adrian Reber <areber@redhat.com >
2024-08-13 17:30:43 +02:00
Jarrod Johnson
ba7a0f7eab
Merge pull request #158 from Obihoernchen/vlan
...
Add VLAN/PKEY support to confignet (fix #157 )
2024-08-13 11:10:19 -04:00
Markus Hilger
0961174425
Remove redundant code
2024-08-09 19:55:42 +02:00
Markus Hilger
005adec437
Add error handling for interface_names
2024-08-09 19:45:19 +02:00
Markus Hilger
6943c2dc0f
Make sure VLAN/PKEY connections are created last
...
Needed for VLANs on bond connections etc.
2024-08-09 19:38:45 +02:00
Markus Hilger
6833cd9c53
Add VLAN/PKEY support to confignet
...
Introduce new node attribute net.vlan_id to support VLAN/PKEY
configuration using confignet.
2024-08-09 17:59:34 +02:00
Jarrod Johnson
8fd39c36bb
Fix some mistakes in confignet
2024-08-09 07:55:42 -04:00
Jarrod Johnson
2fc4483bba
Backport SLP performance enhancement from async branch
...
Same concept that could bog down async variant
could be a slowdown for normal confluent.
2024-08-08 17:09:33 -04:00
Jarrod Johnson
4453ba3b64
Add cpio to confluent_server
...
In order to do osdeploy processing, we must have cpio
2024-08-07 09:20:34 -04:00
Jarrod Johnson
ca4955101d
Improve "realness" of imgutil exec context
...
Utilities that expected /dev/pts will now be satisfied,
as a new /dev/pts is mounted.
Further, systemd added a check in various utilities that
was fouled by the previous method of appearing to have a
root filesystem.
Before, after chroot, we would bind mount / to itself, and this
made things using /proc/mounts, /proc/self/mountinfo, df, mount,
etc happy that there is a real looking root filesystem.
However, by doing it after the chroot, systemd could statx on '..' and
get a different mnt id than /. So it had to be done prior to the
chroot. However it also had to be done before other mounts as
bind mounting over it would block the submounts.
This more closely imitates the initramfs behavior, where '/' starts life
as a 'real' filesystem before being mounted up and switched into.
This behavior was made to imitate the 'start_root.c' behavior as that
seems to be more broadly successful.
2024-08-07 08:40:10 -04:00
Jarrod Johnson
187fda4bb8
Add debootstrap dependency for imgutil
2024-08-07 07:58:08 -04:00
Jarrod Johnson
7ab7600492
Add cpio dependency for imgutil
2024-08-07 07:56:11 -04:00
Jarrod Johnson
f2b9a4fa5d
Improve handling of ssh service being pre-hooked
2024-08-06 12:25:21 -04:00
Jarrod Johnson
ef1f51ef98
Wire in bmc config clear to redfish
2024-08-06 10:05:39 -04:00
Jarrod Johnson
21b1ac7690
Remove asyncore for jammy
...
asyncore isn't needed before noble
2024-08-06 09:34:46 -04:00
Jarrod Johnson
feaef79060
Successfully track credential currency across change
2024-08-06 09:30:13 -04:00
Jarrod Johnson
8c13816331
Fix fetch of model name for XCC3 systems
2024-08-05 15:03:00 -04:00
Jarrod Johnson
e07e6ed152
Improve error handling in OpenBMC console
2024-08-05 14:56:23 -04:00
Jarrod Johnson
0afc3eb03a
Port SSDP improvements to SLP
...
It may not apply, but better to be consistent.
2024-08-05 13:12:54 -04:00
Jarrod Johnson
0fd07e8427
Fix race condition in SSDP snoop
...
If an asynchronous handler is slow to
enroll a target while another target causes an iteration
of the snoop loop, the various modified structures
had been discarded in the interim.
Now persist the data structures iteration to iteration,
using 'clear()' to empty them rather than getting
brand new data structures each loop.
2024-08-05 13:09:50 -04:00
Jarrod Johnson
fc5c1aa90f
Fix SSDP error during merge
2024-08-05 11:32:57 -04:00
Jarrod Johnson
30c4d6b863
Add IPMI enablement to generic Redfish handler
...
If attributes indicate desire for IPMI, try to accomodate.
2024-08-05 11:07:50 -04:00
Jarrod Johnson
cfb31a0d8d
Implement XCC3 discovery
...
For XCC3, change to generic redfish onboarding mechanism.
Extend the generic mechanism to be more specific in some
ways that the XCC3 is pickier about. However, it's just reiteration
of what should have already have been the case.
2024-08-05 10:00:22 -04:00
Jarrod Johnson
e9d4174ce5
Reapply "Add MegaRAC discovery support for recent MegaRAC"
...
This reverts commit 9d979256eb .
2024-08-05 08:35:10 -04:00
Jarrod Johnson
ed33b4e93f
Merge branch 'megaracdisco' into v4xcc
2024-08-05 08:31:47 -04:00
Jarrod Johnson
4b6d41d2f8
Begin work to support V4 Lenovo servers
...
V4 Lenovo servers will have XCC3, and will have differences
and mark an unambiguously redfish capable onboarding process.
For now identify XCC3 variants and mark them, stubbing them
to the xcc handler.
An XCC3 handler will be made basing on the generic redfishbmc handler
with accomodations for XCC specific data (e.g. DeviceDescription
attributes and the Lenovo default user/password choice).
2024-08-02 17:35:39 -04:00
Jarrod Johnson
acce4de739
Add support for an OpenBMC modification
...
While stock OpenBmc does not care about subprotocols,
some implementations use it as a carrier for the XSRF-TOKEN.
Since base OpenBmc ignores it, we just offer it to any implementation
just in case.
2024-08-02 11:57:04 -04:00
Jarrod Johnson
89bd7c6053
Force load IB/OPA modules in case of IB boot
...
Ubuntu diskless was not working with boot over IB
2024-08-01 09:40:39 -04:00
Jarrod Johnson
71ca9ef76c
Fix path to ntp servers in user-data mod for ubuntu
2024-07-29 15:57:34 -04:00
Jarrod Johnson
1c4f1ae817
Try to add ntp and timezones to Ubuntu scripted install
2024-07-29 15:21:10 -04:00
Jarrod Johnson
e6dc383d25
Fix mistake in EL8/EL9 LUKS
2024-07-29 11:22:07 -04:00
Jarrod Johnson
329f2b4485
Amend cryptboot implementation for Ubuntu 22/24, EL8/EL9
...
Provide mechanism for administrator to place a custom
key for potential interactive recovery into
/var/lib/confluent/private/os/<profile>/pending/luks.key
If not provided, generate a unique one for each install.
Either way, persist the key in /etc/confluent/luks.key, to
facilitate later resealing if the user wants (clevis nor systemd
prior to 256 supports unlock via TPM2, so keyfile is required
for now).
Migrating to otherwise escrowed passphrases and/or sealing to
specific TPMs will be left to operators and/or third parties.
2024-07-29 10:17:14 -04:00
Jarrod Johnson
bee9f18197
Tolerate / in the apikey for LUKS setup
...
The apikey is highly likely to have a /, and so we need to use something
not in the base64 alphabet as a delimiter.
2024-07-26 17:59:42 -04:00
Jarrod Johnson
1af898dcb8
Fix encryptboot on EL8/EL9
2024-07-26 17:43:51 -04:00
Jarrod Johnson
332068074d
Extend systemdecrypt hook to support Ubuntu 24.04
...
Ubuntu 240.4 systemd-cryptsetup now has an external dependency.
2024-07-26 16:54:58 -04:00
Jarrod Johnson
2df902e80e
Remove luks password from argv
...
Pass the luks password by environment variable instead.
2024-07-26 14:07:54 -04:00
Jarrod Johnson
7a602f58b2
Fixes for ubuntu profile tpm support
2024-07-26 13:47:13 -04:00
Jarrod Johnson
c563f48c71
Fix assignment of lukspass variable.
2024-07-26 12:30:41 -04:00
Jarrod Johnson
c1747ad24c
Correct spelling of key for luks check
2024-07-26 11:54:10 -04:00
Jarrod Johnson
1ddf735590
Fix omitted argument to addcrypt
2024-07-26 11:50:53 -04:00
Jarrod Johnson
f482d2ead9
Amend crypt hook check
...
The comment was changed, check for password instead.
2024-07-26 11:35:49 -04:00
Jarrod Johnson
58ee85f39e
Rework Ubuntu addcrypt support
...
The comment based hook is destroyed during early install process.
Use python to manipulate the autoinstall file in a more sophisticated way.
Also refactor the initramfs hook material to be standalone files.
2024-07-26 11:33:01 -04:00
Jarrod Johnson
1d6009a2f2
Switch to using systemd-cryptenroll
...
The design more cleanly uses luks slot, but
requires providing initramfs hooks.
Those hooks are provided now.
2024-07-26 10:33:38 -04:00
Jarrod Johnson
6d15633a95
Merge branch 'master' into ubuntucryptboot
2024-07-25 15:57:00 -04:00
Jarrod Johnson
dc7c9f4a3d
Have SSDP fallback to unverified noderanges when looking at candidates
2024-07-25 15:26:23 -04:00
Jarrod Johnson
956e473fa6
Have SSDP fallback to unverified noderanges when looking at candidates
2024-07-25 15:25:09 -04:00
Jarrod Johnson
626f16cb6f
Ignore duplicate specifications of same key
...
Particularly if traversing a lot of linked configuration, the same key/cert
path may come up multiple times, check for equality
and if equal, just keep going.
2024-07-25 14:55:06 -04:00
Jarrod Johnson
30aa6f382c
Ignore duplicate specifications of same key
...
Particularly if traversing a lot of linked configuration, the same key/cert
path may come up multiple times, check for equality
and if equal, just keep going.
2024-07-25 14:54:15 -04:00
Jarrod Johnson
fe6d44a4bb
Merge pull request #153 from Obihoernchen/json-dump-sort
...
Use natural sort for lists in json dumps
2024-07-25 14:15:15 -04:00
tkucherera
fa940579f1
adding webathn-rp dependency
2024-07-25 14:07:27 -04:00
Jarrod Johnson
298be3b30a
Point to the C context object rather than python class
...
The OpenSSL variant of Context is a python class, but it does have
a C context in it.
2024-07-25 14:05:59 -04:00
Jarrod Johnson
80296b6cbc
Point to the C context object rather than python class
...
The OpenSSL variant of Context is a python class, but it does have
a C context in it.
2024-07-25 14:05:10 -04:00
Markus Hilger
41b722c3f7
Use natural sort for lists in json dumps
...
Previously, items were randomly arranged in lists in the json dump. This meant that the JSON files were different after each export.
Now they are naturally sorted and identical.
This should make it easier to save and compare the JSON dumps in version control systems.
2024-07-25 18:38:23 +02:00
Jarrod Johnson
0f955cd068
Begin work on a cryptboot support for ubuntu
...
Start implementing a tpm2-initramfs-tool based approach.
This requires a bit of an odd transition as the PCR 7 is likely
to change between the install phase and the boot phase, so
we have to select different PCRs, but that requires
an argument to pass that crypttab does not support.
2024-07-25 11:24:41 -04:00
Jarrod Johnson
c3e918fc5f
Fix mistake in untethered support
2024-07-25 09:42:24 -04:00
Jarrod Johnson
8f1a1130a8
Add a selfcheck to check misdone collective manager
2024-07-24 15:55:04 -04:00
Jarrod Johnson
6e8d8dabd1
Fix whitespace issue
2024-07-24 15:28:03 -04:00
Jarrod Johnson
a92edc7924
Apply ownership sanity check even for root
...
User could accidently run 'confluent' in a way that makes no sense,
block it the most accessible way.
The pid file should have blocked it, but systemd purges the directory
even on failure.
2024-07-24 15:20:02 -04:00
Jarrod Johnson
714fefe31b
Fix unethered boot for ubuntu
2024-07-24 14:41:39 -04:00
Jarrod Johnson
c91af840e5
Robust handling of relative link resolv.conf
...
resolv.conf may be a relative link, normal file, or absolute link.
Handle all cases.
2024-07-24 11:12:31 -04:00
Jarrod Johnson
2235faa76d
Stop using private interface of PyCA
...
PyCA changes their minds about which bindings to include.
So make the binding ourselves since PyCA removed it in certain versions.
This is a backport of the implementation from the async port effort.
2024-07-24 08:33:20 -04:00
Jarrod Johnson
8f58567a70
Add ssh to default services of a built ubuntu image
2024-07-23 11:05:51 -04:00
Jarrod Johnson
cf4475cfcc
Escape the '\W' to avoid stepping on python processing
2024-07-23 10:23:05 -04:00
Jarrod Johnson
a94b9235e8
Tighten umask on confignet to avoid ubuntu warnings
2024-07-23 10:14:32 -04:00
Jarrod Johnson
bb04faed04
Explicitly request bash under ubuntu, which tends to use dash
2024-07-23 10:01:53 -04:00
Jarrod Johnson
33ed1a5e64
Add onboot for ubuntu diskless
2024-07-23 09:32:20 -04:00
Jarrod Johnson
1ade704daa
Fix imgutil copy of ubuntu sources
2024-07-22 16:40:44 -04:00
Jarrod Johnson
34b03da494
Update for Ubuntu 24.04 diskless
2024-07-22 16:33:07 -04:00
Jarrod Johnson
4f18294d93
Fix path in debian build for imgutil
2024-07-22 13:57:38 -04:00
Jarrod Johnson
7154a1d60c
Add control file for deb build of imgutil
2024-07-22 13:47:36 -04:00
Jarrod Johnson
69fa3f10c0
Add deb packaging of imgutil
2024-07-22 13:47:29 -04:00
Jarrod Johnson
36ca68f44d
Add control file for deb build of imgutil
2024-07-22 13:46:45 -04:00
Jarrod Johnson
ede941c0d9
Add deb packaging of imgutil
2024-07-22 13:46:27 -04:00
Jarrod Johnson
294ef8e88c
Fix for IB diskless boot to install clone
...
The infiniband section must be defined for the OS
to use the IB link. If it is missing then networking
does not come up during firstboot.
Fix this by having an inifiniband section including explicitly
declaring use of datagram mode. This should suffice for all
install use cases, and may be changed after firstboot starts.
2024-07-19 09:28:29 -04:00
Jarrod Johnson
b61e5fb1ff
Merge pull request #151 from Obihoernchen/el-stateful-fix
...
Fix EL stateful install
2024-07-18 13:06:12 -04:00
Markus Hilger
b4a33b8102
Fix EL stateful install
...
Sometimes stateful install can fail if vgchange -a n is run after dd.
Use wipefs instead and fix order of both commands.
Furthermore, use the $INSALLDISK variable.
2024-07-18 17:35:39 +02:00
Jarrod Johnson
9d5432f8cd
Fix network configuration when middle name ends in 'net'
2024-07-18 08:40:40 -04:00
Jarrod Johnson
abf12f2b96
Reinstate linuxefi/initrdefi for older GRUB
...
Technically, Grub never had 'linuxefi/initrdefi' commands
officially, so this is a bit weird.
However, if we see signs of GRUB older than 2.03, we will assume
that is requires the linuxefi/initrdefi commands from
the out of tree patch to support EFI the old way.
This corresponds with EL7. Other variants seem ok with
the more proper linux/initrd command names.
2024-07-15 11:26:58 -04:00
Jarrod Johnson
5d08919769
Merge pull request #150 from tkucherera-lenovo/nodebmcpasswordUpdate
...
better error handling
2024-07-15 09:30:22 -04:00
tkucherera
8d726bced9
better error handling
2024-07-15 09:22:59 -04:00
Jarrod Johnson
945dff09f3
Change to generic linux/inird command in Grub
...
Modern grub has removed these variants, and should only be required for very old non-EFI stub kernels
2024-07-15 08:19:13 -04:00
Jarrod Johnson
7a3e1dfde3
Fix grub fallback path for more grub
2024-07-12 16:48:46 -04:00
Jarrod Johnson
c0cc673c63
Make directory exist before creating file
2024-07-12 16:31:06 -04:00
Jarrod Johnson
3aea1ec7d6
Fix list syntax in grub cfg
2024-07-12 16:21:36 -04:00
Jarrod Johnson
08a5bffa90
Write multiple grub.cfg paths
...
Some have different requirements on how to find grub.cfg
2024-07-12 15:52:49 -04:00
Jarrod Johnson
8c193fe33f
Fix issues with firstboot on Ubuntu 22+
2024-07-12 15:30:47 -04:00
Jarrod Johnson
bc624d9360
Fix Ubuntu 24.04 network bring up
...
Ubuntu 24.04 does not check conf files in /run before assuming dhcp anymore.
Influence its logic to skip dhcp if we have static for it
2024-07-12 15:15:56 -04:00
Jarrod Johnson
7bd41af2cc
More properly error on bad requests
...
Avoid incurring an error code 500 issue in reaction to certain
bad request data.
2024-07-09 08:41:34 -04:00
Jarrod Johnson
4f21e62705
Fix typo in the auth code
2024-07-08 10:02:03 -04:00
Jarrod Johnson
dde6ceadfb
Allow local ISO to proceed if detected with Ubuntu
2024-07-03 14:36:54 -04:00
Jarrod Johnson
9d979256eb
Revert "Add MegaRAC discovery support for recent MegaRAC"
...
This reverts commit 07005d83ca .
Premature addition to master branch
2024-06-27 11:36:41 -04:00
Jarrod Johnson
8ec836f492
Merge branch 'master' into megaracdisco
2024-06-27 11:36:08 -04:00
Jarrod Johnson
07005d83ca
Add MegaRAC discovery support for recent MegaRAC
...
Create a generic redfish discovery and a MegaRAC specific
variant.
This should open the door for more generic common base redfish discovery
for vaguely compatible implementations. For now, MegaRAC only
overrides the default username and password (which is undefined
in the redfish spec).
Also, have SSDP recognize the variant, and tolerate odd nonsense
like SSDP replies coming from all manner of odd port numbers (no
way to make a sane firewall rule to capture that odd behavior,
but at application level we have a chance).
2024-06-27 11:25:33 -04:00
Jarrod Johnson
411b2fae49
Merge remote-tracking branch 'lenovo/master'
2024-06-25 16:26:55 -04:00
Jarrod Johnson
762a8ee73f
Correct proxyDHCP buffer use
...
It was possible for proxyDHCP to look past the network designated end of packet.
Fix this by consistently using the memoryview that was trimmed to size.
2024-06-25 16:25:19 -04:00
tkucherera
c678510b02
working webauthn backend
2024-06-25 14:37:10 -04:00
Jarrod Johnson
f2d9c3868b
Draft work on MegaRAC out of band discovery
2024-06-24 15:56:26 -04:00
Jarrod Johnson
9715247cc6
Merge pull request #97 from sjtstg/dev-enos-plugin
...
Add ENOS management plugin
2024-06-21 13:07:00 -04:00
Simon Thompson
166e4599b9
add enos management plugin
2024-06-21 18:35:10 +02:00
Simon Thompson
d231326dfb
add class to run cmd by ssh
2024-06-21 18:34:47 +02:00
Jarrod Johnson
162e4d1d1e
Add retry logic for the el8 identity image support
...
This allows slow linking interfaces to come up rather than being missed
2024-06-15 15:43:13 -04:00
Jarrod Johnson
8e407cb96e
Correct mistake with confluent uuid copy-in in copernicus
2024-06-14 11:21:46 -04:00
Jarrod Johnson
d06be55568
Add dependencies for Ubuntu Noble
2024-06-11 15:51:02 -04:00
Jarrod Johnson
8db6382629
Change autoversion scheme for dev builds
...
We need to be compliant with python versioning for the
tools to keep working
2024-06-11 09:25:57 -04:00
Jarrod Johnson
663b320868
Add more bounds checking in copernicus
2024-06-07 12:43:15 -04:00
Jarrod Johnson
517242df47
Avoid double run of driver disk content
2024-06-07 11:36:39 -04:00
Jarrod Johnson
c6adf8175a
Try processing driver disks before udevadm invocation
2024-06-07 11:03:00 -04:00
Jarrod Johnson
38a95131f9
Add more error handling in vtbufferd
2024-06-07 09:36:18 -04:00
Jarrod Johnson
5d416cb1b1
Remove disused dependency list
2024-06-06 11:23:28 -04:00
Jarrod Johnson
451e3ba224
Add nodeapply man page
2024-06-06 09:02:45 -04:00
Jarrod Johnson
6564f8de72
Update license material
2024-06-05 08:39:37 -04:00
Jarrod Johnson
bb414524ad
Add fallback if timedatectl can't run.
2024-05-30 08:14:58 -04:00
Jarrod Johnson
bab0a77cb6
Refresh to CentOS stream 9
2024-05-23 15:15:37 -04:00
Jarrod Johnson
010c8a0a23
Amend EL network bringup
...
One issue is that there are multiple networkmanager connections,
clean this up, though this seems not to be a functional issue.
However, sometimes the lldpad usage screws up network configuration,
disable the facility by forcibly disabling fcoe sincec that is what triggers lldpad.
wq
2024-05-22 15:45:24 -04:00
Jarrod Johnson
c0bcc3791d
Fix handling some eatonpdu return values
2024-05-15 12:30:36 -04:00
Jarrod Johnson
172c57c6f1
Fix media location search for EL8
...
EL8 distributions marked the 'OS' as dracut, workaround by trying to use PRETTY_NAME
2024-05-15 12:29:32 -04:00
Jarrod Johnson
91dce25a8b
Merge pull request #149 from tkucherera-lenovo/updateAttrib
...
check update args before setting anything
2024-05-09 08:52:22 -04:00
Jarrod Johnson
62be16442c
Fix passive detection of SLP devices (e.g. SMM)
...
A mistake in the python3 port caused passive SLP
detection to break. Remedy that mistake.
2024-05-08 11:51:00 -04:00
Jarrod Johnson
d0e73c887b
Load firewall before esxi installation begins
...
Parts of esxi install depend on firewall running. When
we are done with 'odd' networking, restore firewall
to meet that expectation.
2024-05-07 10:06:57 -04:00
Jarrod Johnson
b7a5101a34
Provide extra warning about redoing SSH materials
2024-05-03 10:27:01 -04:00
tkucherera
930ff3e20d
fix error message
2024-05-02 10:41:30 -04:00
tkucherera
39fb229ef1
check update args before setting anything
2024-05-02 10:29:20 -04:00
Jarrod Johnson
60f8f964f5
Merge pull request #144 from tkucherera-lenovo/nodebmcpassword
...
nodebmcpassword
2024-04-29 10:50:09 -04:00
tkucherera
8f01f22bb5
add password prompting and env var
2024-04-24 10:00:49 -04:00
Wera Grzeda
d779f015d6
sed to use single quotes
2024-04-23 18:14:48 +02:00
Wera Grzeda
bf004fb7b9
cleaned geist.py
2024-04-23 15:53:35 +02:00
Wera Grzeda
21b8534fef
Revert "my changes to Eaton PDU sensors"
...
This reverts commit 6d87d11f5e .
2024-04-23 15:29:35 +02:00
Wera Grzeda
3b69c54203
Revert "new eaton pdu power readings"
...
This reverts commit ac68f1f22c .
2024-04-23 15:08:36 +02:00
Wera Grzeda
9954b227a9
Revert "nodeconfig ntp servers for smms"
...
This reverts commit 44405baaf3 .
2024-04-23 15:06:28 +02:00
weragrzeda
c0891faaeb
Merge branch 'lenovo:master' into master
2024-04-23 14:59:57 +02:00
Jarrod Johnson
86e612b4bf
Move anaconda netroot to not be specified in media sourced
...
When sourcing from media, do not trigger anaconda netroot
behavior.
2024-04-22 12:47:52 -04:00
Jarrod Johnson
6f2be355ef
Source from "local" media if present
...
Some environments may want to load the bulk of the
media via USB rather than over the network. This prefers
that source if that scheme is detected.
2024-04-22 11:32:27 -04:00
Jarrod Johnson
b606882327
Have collate preserve relative whitespace
...
The change to tolerate either a space or no space ended up
greedily consuming whitespace. Do best possible in two cases:
For log, use the first line as a clue, and consistently pad or not pad
according to first line. It won't catch different pad strategies, or
handle first line being indented but other lines not being indented.
For the textgroup variant, allow subsequent lines to revise the
pad downward, and accept any whitespace, not just space.
2024-04-19 08:22:32 -04:00
Jarrod Johnson
10f0fabb8c
Fix nodegroup retrieval
...
nodegroup information was broken by clear warning support.
2024-04-17 15:18:45 -04:00
Jarrod Johnson
0d3e2cee6c
Merge pull request #146 from tkucherera-lenovo/sample-postscrits
...
sample post scripts directory
2024-04-16 09:14:56 -04:00
tkucherera
3b55f500ce
sample post scripts directory
2024-04-16 03:16:15 -04:00
Jarrod Johnson
3ba3394a54
Fix None return by exec_on_leader with warnings
2024-04-12 17:32:13 -04:00
Jarrod Johnson
a6a2f2f2de
Fixes for attribute clear warning behavior
...
Correct collective behavior for failing to clear on followers.
Also, connect the warnings from the leader to the member issuing the
RPC.
2024-04-12 11:46:17 -04:00
Jarrod Johnson
8e5ee6c9d8
Make orphaned sync runner retire on new sync request
2024-04-10 13:54:06 -04:00
Jarrod Johnson
ceaf641c1a
Keep reap loop going on error
2024-04-09 16:18:24 -04:00
Jarrod Johnson
01722c18c4
Fix location of idle sleep in syncfiles cleaner
2024-04-09 15:40:40 -04:00
Jarrod Johnson
8fb889ba73
Correct syntax error
2024-04-09 15:27:20 -04:00
Jarrod Johnson
eaffb342b2
Reap stale sync runners after a minute dead
...
If the client never claims the result, delete the sync task.
2024-04-09 15:19:38 -04:00
Jarrod Johnson
1da27083cc
Another cleanup of syncfileclient output
2024-04-09 15:08:56 -04:00
Jarrod Johnson
67b3c48dc9
Clean up error output on syncfileclient execution
2024-04-09 14:58:38 -04:00
Jarrod Johnson
8ca9a44476
Provide more interesting response body to syncfileclient
2024-04-09 14:27:00 -04:00
Jarrod Johnson
02f301b5d0
Fix mistakes in syncfileclient change
2024-04-09 13:41:27 -04:00
Jarrod Johnson
33271451d7
Support SHA384 if used as fingerprint
2024-04-09 13:17:19 -04:00
Jarrod Johnson
f68f9f4693
Make syncfile step robust or pause
...
If syncfiles fails, keep it retrying.
Also, slow down sync checking to avoid hammering the system.
Further, randomized delay to spread highly synchronized requestors.
Block attempts to do multiple concurrent syncfile runs.
2024-04-09 11:07:11 -04:00
Jarrod Johnson
a4e152c17d
Defer disarm until after successful client notification
...
It is theoretically possible for a client to get disconnected
right in the middle. In such a scenario, err on the side of letting
the mechanism stay armed for the sake of a retry being possible.
2024-04-09 10:31:46 -04:00
tkucherera
272c456435
nodebmcpassword man page
2024-04-03 18:50:46 -04:00
tkucherera
894290f577
nodebmcpassword
2024-04-03 18:46:37 -04:00
Jarrod Johnson
34804b2d5f
Provide components for cert management with modern XCC
...
Refresh getcsr and installcert to handle latest firmware.
Also add ability to have pre-existing CSR, and trust the SAN on the way through.
If this becomes more properly a feature, then would likely impose a SAN
on certs, similar to the SSH principals, rather than deferring to the CSR
to get it right.
2024-04-01 12:13:21 -04:00
Jarrod Johnson
77bb03e96c
Merge tag '3.9.3'
...
Numerous bugfixes
2024-03-29 16:24:48 -04:00
Jarrod Johnson
12bb5d583a
Correct the equality message in better messagesw
2024-03-27 08:40:01 -04:00
Jarrod Johnson
03bdbfc8ed
Provide more useful error messages on mistakes within []
2024-03-27 08:39:48 -04:00
Jarrod Johnson
661b2ae815
Filter out nvme 'c' devnames, that are used to refer to paths to nvme
...
Some versions start manifesting nvme devnames with 'c', which
are to be used to interact with multipath to have raw devices
backing a traditional nvme device.
2024-03-27 08:38:36 -04:00
Jarrod Johnson
ddb8c4cce4
Fix a few noderange abbreviations
...
Also, add some test cases on abbreviation
to help sanity check things in the future.
2024-03-27 08:37:51 -04:00
Jarrod Johnson
17fff4997b
Fix omission of info dir in plugins
2024-03-27 08:36:54 -04:00
Jarrod Johnson
7b3129a1a2
Fix FFDC preflight checks
...
The code was comparing two string constants, instead of
a variable to a constant. Correct the problem to enable
the preflight checks to work as intended.
2024-03-27 08:36:11 -04:00
Jarrod Johnson
d183a3f99c
Fix problem where one multicast/broadcast attempt could tank other interfaces
...
Carrying over change from ssdp, ignore failures on transmit, particularly if
firewall
2024-03-27 08:35:52 -04:00
Jarrod Johnson
b3b3627bf9
Remove disused bufferlock
...
We no longer use a lock on buffer communication, eliminate
the stale variable.
2024-03-27 08:34:36 -04:00
Jarrod Johnson
c1afc144cb
Change to unix domain for vtbuffer communication
...
The semaphore arbitrated single channel sharing
was proving to be too slow. Make the communication
lockless by having dedicated sockets per request.
2024-03-27 08:34:31 -04:00
Jarrod Johnson
ac1f7c57b6
Fix lldp when peername is null
...
Some neighbors result in a null name, handle that.
2024-03-27 08:33:50 -04:00
Jarrod Johnson
19e9c6910d
Fix nodeapply redoing a single node multiple times
2024-03-27 08:33:35 -04:00
Jarrod Johnson
e38cd5d3e5
Fallback to unverified noderange on candidate manager check in PXE
...
When doing pxe and the noderange of the candidate managers fails,
try again without validation in case the user omitted collective members
from nodelist, but still used ',' to enumerate them.
2024-03-27 08:31:44 -04:00
Jarrod Johnson
f1d3e47439
Logout prior to renaming user
...
Some firmware cannot tolerate a web session being
active during a rename. Make sure logout has been done, and
give a retry if needed to let the session close out after
logging out.
2024-03-27 08:31:06 -04:00
Jarrod Johnson
f7a2e51f9c
fstab fixup for hyphenated lvm vg names
2024-03-26 10:31:29 -04:00
Jarrod Johnson
f3d0bd9079
Merge pull request #142 from tkucherera-lenovo/l2traceroute
...
L2traceroute
2024-03-25 08:06:52 -04:00
tkucherera
296a0e88b4
making the use cases more generic
2024-03-24 11:41:23 -04:00
Jarrod Johnson
c60bf68cbc
Logout prior to renaming user
...
Some firmware cannot tolerate a web session being
active during a rename. Make sure logout has been done, and
give a retry if needed to let the session close out after
logging out.
2024-03-22 12:56:09 -04:00
tkucherera
466ed74961
l2traceroute
2024-03-22 11:37:51 -04:00
tkucherera
838c0920eb
l2traceroute
2024-03-22 11:37:12 -04:00
Jarrod Johnson
6ad0e773de
Actually have the vformat override return
...
Performing the super() is hardly helpful if it
doesn't actually copy the return behavior.
2024-03-21 16:28:49 -04:00
Jarrod Johnson
5a7d98c6b8
Enhance error reporting
...
For one, when using confluent expressions, induce {} to be an error to
trigger an error for someone trying to xargs something.
Another is to add warnings when clear does something deliberately, but
is something that might surprise a user, steering them toward
what they possibly might want to do instead.
2024-03-21 16:09:37 -04:00
Jarrod Johnson
13fc5d9f37
Capture better error data on failed syncfiles
...
syncfiles can often hang up in unexpected ways,
provide a catch-all.
2024-03-20 09:49:25 -04:00
Jarrod Johnson
559e88b144
Correct vgname for hyphenated node names
2024-03-19 09:41:20 -04:00
Jarrod Johnson
5f801e6683
Correct syntax error in ubuntu arm profile init
2024-03-18 12:45:25 -04:00
Jarrod Johnson
7a6b03097b
Fixup Ubuntu 22 ARM support
2024-03-18 12:24:25 -04:00
Jarrod Johnson
6502573d90
Bring ubuntu 22 versions of firstboot and post to 20
2024-03-18 09:15:11 -04:00
Jarrod Johnson
3dd09b95e4
Fix Ubuntu 20 pre script to match 22
2024-03-18 09:13:53 -04:00
Jarrod Johnson
a595d31e94
Explicitly invoke bash for ubuntu post
...
Ubuntu really tries to use non-bash, explicitly use bash when we need it.
2024-03-18 08:56:06 -04:00
Jarrod Johnson
b157e55f00
Fallback to unverified noderange on candidate manager check in PXE
...
When doing pxe and the noderange of the candidate managers fails,
try again without validation in case the user omitted collective members
from nodelist, but still used ',' to enumerate them.
2024-03-15 15:50:58 -04:00
Jarrod Johnson
60fe306890
Numerous fixes
...
Normalize cloning by wipefs prior to image2disk
Have imgutil filter out zram mounts.
Fix syncfiles error handling.
2024-03-15 13:03:46 -04:00
Jarrod Johnson
bd2288ccb7
Ensure preservation of " if rename fails
...
If ent would swallow a ", make sure to put it back.
2024-03-15 12:29:37 -04:00
Jarrod Johnson
789376029d
Numerous fixes to the EL9 cloning
...
Fix various callbacks when using IPv6 based deployment.
Do not attempt to restore erroneously cloned zram partitions.
Convert LVM names to new LVM names consistent with source naming scheme.
Push new kernel command line into /boot/loader and /etc/kernel/cmdline.
2024-03-15 09:57:23 -04:00
Jarrod Johnson
1d4505ff3c
SSH test by IP, to reflect actual usage and catch issues
...
One issue is modified ssh_known_hosts wildcard customization
failing to cover IP address.
2024-03-14 11:21:41 -04:00
Jarrod Johnson
876b59c1f0
Remove redundant kill on the agent pid
...
Extraneous kill on the agent pid is removed.
2024-03-14 10:52:52 -04:00
Jarrod Johnson
58d9bc1816
Updates to confluent_selfcheck
...
Reap ssh-agent to avoid stale agents lying around.
Remove nuisance warnings about virbr0 when present.
Do a full runthrough as the confluent user to ssh to a node when user
requests with '-a', marking known_hosts and automation key issues.
2024-03-14 10:50:26 -04:00
Jarrod Johnson
17af9c74b8
Fix nodeapply redoing a single node multiple times
2024-03-12 15:33:31 -04:00
Jarrod Johnson
0d720baf25
Fix lldp when peername is null
...
Some neighbors result in a null name, handle that.
2024-03-12 09:37:36 -04:00
Jarrod Johnson
49e614eb32
Have image2disk delay exit on error
...
Debugging cloning is difficult when system immediately reboots on error.
2024-03-11 17:11:44 -04:00
Jarrod Johnson
cdefb400f9
Expose fingerprinting and better error handling to osdeploy
...
This allows custom name and pre-import checking.
2024-03-11 13:33:15 -04:00
Jarrod Johnson
3ffeef5cf3
Fix stray blank line at end of nodelist
...
Wrong indentation level for nodelist resulting in
spurious line.
2024-03-06 16:27:09 -05:00
Jarrod Johnson
5ae3f4c62a
Properly address runansible error relay
2024-03-06 09:28:24 -05:00
Jarrod Johnson
2f8dfac9bc
Dump stderr to client if ansible had an utterly disastrous condition
2024-03-06 09:27:31 -05:00
Jarrod Johnson
75db6da621
Opportunisticlly use sshd_config.d when detected
2024-03-04 08:16:18 -05:00
Jarrod Johnson
fa5b1c671e
Remove disused bufferlock
...
We no longer use a lock on buffer communication, eliminate
the stale variable.
2024-02-22 15:07:51 -05:00
Jarrod Johnson
72e26caf36
Change to unix domain for vtbuffer communication
...
The semaphore arbitrated single channel sharing
was proving to be too slow. Make the communication
lockless by having dedicated sockets per request.
2024-02-22 15:07:42 -05:00
Jarrod Johnson
21f691cbd8
Correct the equality message in better messagesw
2024-02-13 16:00:50 -05:00
Jarrod Johnson
d07e6f86c0
Provide more useful error messages on mistakes within []
2024-02-13 15:58:08 -05:00
Jarrod Johnson
3a0172cccc
Make indirect PDU operations concurrent
...
Similar to the enclosure reseat work, have indirect
PDU operations be made concurrent across PDUs, though
still serial within a PDU.
2024-02-02 10:35:47 -05:00
Jarrod Johnson
59a31d38a2
Make reseat concurrent
...
Spawn reseat activity concurrently between chassis. This should
reduce time to nodes per chassis rather than total nodes.
2024-02-02 08:51:12 -05:00
Jarrod Johnson
a17695ad06
Extend confluent PXE support
...
For relay agent options, preserve and echo back the option,
needed for certain environments.
Also, it turns out that for whatever reason on some platforms, iPXE's
proxyDHCP logic can't seem to get a reply. In this scenario,
provide the filename in the DHCP offer without waiting for proxyDHCP.
This change may be worth evaluating more broadly, but may carry risk of not working
right with unmanaged DHCP servers.
2024-02-01 16:38:04 -05:00
Jarrod Johnson
7377c44e0f
Fix problem where one multicast/broadcast attempt could tank other interfaces
...
Carrying over change from ssdp, ignore failures on transmit, particularly if
firewall
2024-02-01 08:50:44 -05:00
Jarrod Johnson
fc82021f2b
Add missing ubuntu24.04 to packaging
2024-01-30 15:04:04 -05:00
Jarrod Johnson
9ad9912ef1
Change to pre-made links for ubuntu24.04
2024-01-30 14:28:11 -05:00
Jarrod Johnson
7618fa8b63
Add diskless links
2024-01-30 14:21:25 -05:00
Jarrod Johnson
170e585e57
Add preliminary ubuntu 24.04 support
2024-01-30 13:53:59 -05:00
Jarrod Johnson
72cace5a50
More thoroughly wire up custom name
...
Have custom name go through to actual import and influence profile names
2024-01-30 11:11:27 -05:00
Jarrod Johnson
d0373977b3
Fix FFDC preflight checks
...
The code was comparing two string constants, instead of
a variable to a constant. Correct the problem to enable
the preflight checks to work as intended.
2024-01-30 09:08:28 -05:00
Jarrod Johnson
f03525aac5
Merge pull request #141 from tkucherera-lenovo/defaultWebUI
...
opening web ui using default ip
2024-01-29 16:56:13 -05:00
tkucherera
fcb3d917db
use socket.getaddrinfo
2024-01-26 17:14:04 -05:00
tkucherera
16ad4e776f
opening web ui using default ip
2024-01-26 12:39:25 -05:00
Jarrod Johnson
87454c1ab1
Start browserfs if not yet running
2024-01-26 09:31:59 -05:00
Jarrod Johnson
fa3e1202c4
Relax systemd device policy to allow /dev/fuse access
2024-01-26 09:24:41 -05:00
Jarrod Johnson
41675e528f
Amend dhcp license path
2024-01-24 15:31:27 -05:00
Jarrod Johnson
a3d386dc39
Add NOTICE gathering for some genesis packages
2024-01-24 14:47:23 -05:00
Jarrod Johnson
e5051408e5
More license handling
2024-01-23 15:02:08 -05:00
Jarrod Johnson
fa7cd2940e
More license updates for genesis
2024-01-23 14:39:32 -05:00
Jarrod Johnson
e5736ecb51
Update license assets in genesis
2024-01-23 14:18:25 -05:00
Jarrod Johnson
b90718982e
Implement a number of OS deployment management enhancements.
...
Add capability to fingerprint media without doing a full import (/deployment/fingerprinting/)
Add fetching the profile info as json under the /deployment/ api.
Prepare to support custom distribution name on import
2024-01-22 17:22:47 -05:00
Jarrod Johnson
07a7357c87
Merge remote-tracking branch 'xcat/master'
2024-01-22 10:40:23 -05:00
Jarrod Johnson
dec7454866
Merge branch 'browserfs'
2024-01-22 10:39:35 -05:00
Jarrod Johnson
bcc631f88d
Set static hostname in diskless boot
2024-01-22 10:39:17 -05:00
Jarrod Johnson
9203ac32e9
Start work on browserfs concept
...
This will allow WebUI reactivity even with large files for import.
2024-01-17 17:01:49 -05:00
Jarrod Johnson
141760ea19
Merge pull request #140 from henglikuang/boot_order_issue
...
Fix efivars handling of unexpected unmount
2024-01-17 08:20:17 -05:00
Jarrod Johnson
c7628a3638
Merge pull request #139 from henglikuang/master
...
Add default time zone as UTC
2024-01-17 08:19:55 -05:00
Jarrod Johnson
5fdd6973f1
Update with more license content
2024-01-16 11:11:53 -05:00
Jarrod Johnson
07f91d792a
Fix omission of info dir in plugins
2024-01-12 10:52:49 -05:00
Jarrod Johnson
56b644ead9
The 3rd party monotonic is no longer needed
2024-01-11 16:30:45 -05:00
henglikuang1
ea88ccb0ad
Fix efivars handling of unexpected unmount
2024-01-11 14:31:45 +08:00
henglikuang1
382feea68d
Add default time zone as UTC
2024-01-11 11:44:25 +08:00
Jarrod Johnson
0dfe66f1b2
Fix overzealous reaping of '-lib' folders
2024-01-09 16:08:49 -05:00
Jarrod Johnson
cfccb046bc
Correct syntax error in draft attempt
2024-01-09 13:36:55 -05:00
Jarrod Johnson
70f91d59b2
Update license material in gathering genesis
2024-01-09 13:32:54 -05:00
Tinashe Kucherera
0016d940e3
Merge branch 'xcat2:master' into firwareUpdateServer
2024-01-04 14:12:51 -05:00
Jarrod Johnson
4d63908164
Have a fallback height of 1 for any missing height
2024-01-04 11:17:02 -05:00
Jarrod Johnson
39c00323b3
Fix error where layout would bail if a partial error were encountered
2024-01-03 15:58:24 -05:00
Jarrod Johnson
b0e23121a8
Add stub resize handler
...
For uninitialized console handlers, provide a stub
to do nothing on resize.
This avoids such a request crashing a shared websocket session.
2024-01-03 15:03:49 -05:00
Jarrod Johnson
85629dea64
Prevent unitiailized collective info
...
When doing proxyconsole, don't land in a useless retach
loop when managerinfo is None.
2023-12-07 14:45:19 -05:00
Jarrod Johnson
93269a05eb
Fix cloning with ipv6 and EL9
2023-12-06 17:06:09 -05:00
Jarrod Johnson
7aef012a42
Correct string join syntax in confignet
2023-12-05 14:39:36 -05:00
Jarrod Johnson
7b89054b35
Fix a few noderange abbreviations
...
Also, add some test cases on abbreviation
to help sanity check things in the future.
2023-12-01 15:55:39 -05:00
Jarrod Johnson
3e7cdd1caa
Merge pull request #138 from mslacken/suseInstall
...
disable online repos for openSUSE leap
2023-12-01 08:49:42 -05:00
Christian Goll
3aa91b61e5
disable online repos for openSUSE leap
...
online repositories may not be accesible for the cluster
nodes but were added from the content.xml. Editing this
files with initprofile.sh is impossible as they are executed
in parallel, so all repos starting with
https?://download.opensuse.org
are removed during post
Signed-off-by: Christian Goll <cgoll@suse.com >
2023-12-01 10:57:31 +01:00
Jarrod Johnson
6763c86387
Add DNS to NetworkManager
...
Similar to netplan, apply DNS to every interface.
2023-11-28 14:35:01 -05:00
Jarrod Johnson
63b737dc52
Correct bonding in confignet for NetworkManager
2023-11-28 14:09:59 -05:00
Jarrod Johnson
55e60d52fd
Avoid potential multiple brackets in imageboot.sh
2023-11-28 13:33:21 -05:00
Jarrod Johnson
3730ba049f
Fix potential doubling up of IPv6 brackets
...
There were scenarios where IPv6 URL brackets may double up.
2023-11-28 13:11:25 -05:00
Jarrod Johnson
4fb263e643
Merge pull request #137 from mslacken/python3-dbm
...
python3-dbm is required for SUSE
2023-11-27 09:53:27 -05:00
Christian Goll
0b28d64c83
python3-dbm is required for SUSE
...
the python module `anydbm` is part of this python package
Signed-off-by: Christian Goll <cgoll@suse.com >
2023-11-27 15:18:57 +01:00
Jarrod Johnson
68ce3d039d
Filter out nvme 'c' devnames, that are used to refer to paths to nvme
...
Some versions start manifesting nvme devnames with 'c', which
are to be used to interact with multipath to have raw devices
backing a traditional nvme device.
2023-11-27 08:34:34 -05:00
Jarrod Johnson
9757cd1ae3
Check the profile *before* rebooting systems
...
This provides a much better experience when a typo or
other mistake has a profile that is not actionable.
2023-11-16 10:20:48 -05:00
Jarrod Johnson
c9452e65e8
Fix some osdeploy ordering issues
...
osdeploy initialization dependencies have been
improved and marked if absolutely dependent.
2023-11-15 11:30:20 -05:00
Jarrod Johnson
cd07e0e212
Add missing disclaimer from tmt license
2023-11-14 15:14:54 -05:00
Jarrod Johnson
f475d58955
Various permission fixes for osdeploy initialize
...
Fix a few scenarios where certain ordering of
initialize creates unworkable permissions.
2023-11-13 15:43:11 -05:00
Jarrod Johnson
ec023831a5
Fix syntax error in confignet
2023-11-09 17:28:38 -05:00
Jarrod Johnson
6e092934e7
Fix for ubuntu clone to nvme
2023-11-09 17:15:17 -05:00
Jarrod Johnson
e03f010eac
Fix Ubuntu confignet without IPv6
...
If confignet did not have ipv6 to work with, it
would fail to work at all.
Also handle when the configuration has a blank DNS server in it.
2023-11-09 09:03:59 -05:00
Jarrod Johnson
2cd75ef425
Fix diskless autocons message
2023-11-08 10:22:51 -05:00
Jarrod Johnson
e90f2829ab
Filter bind mounts from imgutil capture
...
If bind mounts are in use, it will foul the capture.
Notably, one example is if you install the firefox snap in
ubuntu, snapd creates a bind mount.
This will ignore bind mounts, and rely upon the system to
put it straight.
2023-11-08 09:37:44 -05:00
Jarrod Johnson
8f927d94e9
Switch to bond from team
...
Teaming is deprecated and EL went back to bond, follow
that guidance.
2023-11-01 11:17:04 -04:00
Jarrod Johnson
8a4ef0b1fe
Make link type detection more specific
...
If the ip command shows altnames, do not
let the altnames interfere with locking
on to linktype.
Further, use show dev instead of grep to be more specific.
2023-11-01 10:42:33 -04:00
Jarrod Johnson
814f420852
Update genesis to deal with CS9 sshd
2023-10-31 11:47:28 -04:00
weragrzeda
80242e35b3
Merge branch 'lenovo:master' into master
2023-10-30 09:03:08 +01:00
Jarrod Johnson
a1ac234b73
Enhance error message for authentication issue during syncfiles
2023-10-27 15:31:14 -04:00
Jarrod Johnson
d082610678
Add more deep checking of node networking
...
Whether due to the management node or node IP addresses,
check if deployment can reasonably proceed using IPv4 or IPv6,
and give a warning with some suggestions to check.
Also, add nodeinventory <node> -s as an example resolution for missing
uuid.
2023-10-27 13:34:52 -04:00
Jarrod Johnson
0857716f64
Add support for normalized sensors
...
This opens the door for normalized common sensors
for clients that care about the semantics but
cannot keep track of inconsistent sensor names from
implementation to implementation.
2023-10-26 08:58:37 -04:00
Jarrod Johnson
49a504972f
Fix syntax error in confignet
2023-10-25 14:21:55 -04:00
Wera Grzeda
62ab361ef8
nicer output for inventory
2023-10-23 08:16:27 +02:00
Wera Grzeda
ac68f1f22c
new eaton pdu power readings
2023-10-20 11:38:11 +02:00
weragrzeda
7972834a62
Merge branch 'lenovo:master' into master
2023-10-20 11:36:38 +02:00
Jarrod Johnson
9c9d71882c
Disable keepalive
...
Unfortunately, apache can get a bit odd over how it
reports a non-viable open socket for keepalive, which
can happen in certain windows.
Disable the keepalive feature and take some performance penalty in
browsers for the sake of more consistent return behavior and
fewer idle greenthreads doing nothing.
2023-10-19 15:51:40 -04:00
Jarrod Johnson
913a26aec9
Change to consistent CWD for osdeploy arm build
2023-10-19 10:42:39 -04:00
Jarrod Johnson
063bfc17a5
Start using container for final build process
...
Makes supporting the base platform easier by largely ignoring the
base platform.
2023-10-19 10:40:57 -04:00
Jarrod Johnson
8b150a9047
Fix for post group failures
...
A node failure after group failure would
erase the group from range.
Further, correct an issue where an empty nodeset
would trigger
a bad behavior.
2023-10-19 09:25:57 -04:00
Jarrod Johnson
b91a194184
Improve selfselfice performance with yaml
...
The yaml python default behavior is 'pure python' and is
tortuously slow.
As a test, yaml dump of a 17,000 element list took 70 seconds in default configuration.
Opting into the C functions, that time comes down to 10 seconds, a
nice and easy improvement for generic yaml.
For dumping a simple dumb list (e.g. the nodelist for ssh), a special
case yaml-looking result is done, which hits 0.4 seconds on that same
test. So this special case is added to nodelist, which can be very long
and very in demand at the same time.
2023-10-17 16:29:30 -04:00
Jarrod Johnson
06d18cec63
Fix abbreviation when pad decreases
...
This is a bizarre way to work, but it should be valid.
2023-10-16 08:29:45 -04:00
Jarrod Johnson
0434f38ea1
Add iterm and kitty image support to stats
...
This delivers improved graphics
speed and quality for selected terminals.
2023-10-13 15:25:08 -04:00
Jarrod Johnson
bfbb7c2843
Handle mid-range pad changing, and identical names with only pad difference
...
This would be painful to operate, but if done at least
reverse noderange will
faithfully honor it now.
2023-10-12 16:09:40 -04:00
Jarrod Johnson
3a6932ea6d
Start tracking padding during abbreviation
...
This will take care of padding when
padding is consistent across a range.
However, we still have a problem with a progression like:
01
02
...
98
099
100
Where numbers in the middle start getting padding unexpectedly without a leading digit.
2023-10-12 15:28:54 -04:00
Jarrod Johnson
6e4d9d9eb4
Address potential slowdowns by misbehaving DNS
...
For one, shorten the DNS timeout, if the DNS server is completely out, give up quickly.
For another, if a host has a large number of net.X.hostnames, the sequential nature
was intolerable.
Have each network be evaluated in a greenthread concurrently to serve
the DNS latency concurrently.
2023-10-12 14:46:09 -04:00
Jarrod Johnson
2d906e1886
Fix handling of pre-existing array
2023-10-11 10:15:24 -04:00
Jarrod Johnson
e9a2f57ad8
Simplify the noderange abbreviation
...
Since the multi-iterator ambition is out,
ditch the expensive set wrangling step.
Now the procedure is:
-Suck nodes into groups, as possible
-Separately for groups and nodes:
-Sort the elements
-Chunk the elements based on 'non-numberical' situation matching
-analyze the iterators to apply [] to shorten the name
-Multi-iterator will cause a discontinuity, and a new ',' delimited name gets constructed
2023-10-10 16:56:32 -04:00
Jarrod Johnson
c254564f02
Fully give up on multi-iterator abbreviation
...
There's too many cases that can go wrong.
Note that with this lower ambition, it would be possible to
significantly streamline the implementation.
Notably, the 'find discontinuities' approach
was selected to *try* to
support multiple iterators,
but since that didn't pan out,
a more straightforward
numerical strategy can
be used from the onset.
2023-10-10 12:47:19 -04:00
Jarrod Johnson
fe27cdea4a
Abbreviate harder, using brackets
...
Add a round that collapses as is
convenient to bracketed range.
2023-10-09 17:18:44 -04:00
Jarrod Johnson
a4ea5e5c4b
Abbreviate sequential nodes
...
When we have sequential nodes, collapse to ':' delimited range.
2023-10-07 09:51:32 -04:00
tkucherera
b3f32eb805
"firmware update on the server side"
2023-10-06 08:32:47 -04:00
Jarrod Johnson
06ee48f702
Merge pull request #135 from tkucherera-lenovo/Nodeattrib
...
missing_shlex import in nodeattrib
2023-10-05 12:53:16 -04:00
tkucherera
77eec1a791
missing_shlex import in nodeattrib
2023-10-05 11:44:04 -04:00
Jarrod Johnson
b60b78327f
Merge pull request #134 from tkucherera-lenovo/Nodeattrib
...
Nodeattrib
2023-10-04 16:32:32 -04:00
tkucherera
2e84c73baa
''
2023-10-04 16:27:05 -04:00
tkucherera
67f607a8f1
fix to synopsis
2023-10-04 16:26:20 -04:00
tkucherera
eca1854d56
fix to env doc
2023-10-04 10:37:41 -04:00
tkucherera
ba90609f3b
documentation for nodeattrib -s
2023-10-04 10:36:58 -04:00
tkucherera
c8094276d0
typ0_fix
2023-10-04 10:34:07 -04:00
tkucherera
d299db3442
doc
2023-10-04 10:31:24 -04:00
tkucherera
9f168aee73
docs- batch file systax
2023-10-04 10:28:16 -04:00
Jarrod Johnson
ee19386d8c
Export nodename in ubuntu pre
2023-10-04 09:49:09 -04:00
Jarrod Johnson
ef9083062b
Make multiple attempts to fetch networking configuration
...
Since confignet runs early in startup, the networking can be a bit fickle.
Tolerate outages during early use.
2023-10-03 10:13:53 -04:00
Tinashe Kucherera
901f633848
Merge branch 'xcat2:master' into staging
2023-10-02 12:58:14 -04:00
Jarrod Johnson
cca0c57e90
Merge pull request #132 from tkucherera-lenovo/nodersync
...
node rsync -s switch
2023-10-02 12:57:19 -04:00
tkucherera
820d255a1a
staging feature
2023-10-02 11:23:23 -04:00
Jarrod Johnson
79e3ad53f8
Add server side rack layout organization
...
The info is hard to put together client side, but
supremely easy server side.
Provide a nice call to
get the layout for a noderange, similar to (but better than) current
GUI code.
Now GUI can get a nice canned JSON
description of the layout.
2023-09-29 16:23:59 -04:00
tkucherera
b63d75f2bb
change to remove to many conditionals
2023-09-29 12:07:38 -04:00
tkucherera
378929579f
Allow to be able to specify prefix as well
2023-09-28 08:56:52 -04:00
tkucherera
eee8bbb498
node rsync -s switch
2023-09-27 17:52:15 -04:00
Jarrod Johnson
a00fd325aa
Export variables for ubuntu pre.d run
2023-09-27 13:09:23 -04:00
weragrzeda
02d2ce6bfd
Merge branch 'lenovo:master' into master
2023-09-21 13:57:12 +02:00
weragrzeda
7b19e67bf0
amperage and outlet fix for geist.py
2023-09-21 06:27:12 +02:00
Jarrod Johnson
3624013889
Merge pull request #130 from tkucherera-lenovo/Nodeattrib
...
Nodeattrib
2023-09-20 15:07:02 -04:00
tkucherera
bd0b16992d
man page
2023-09-20 14:42:17 -04:00
tkucherera
4ecbbdfd9a
nodeattrib -s use with batch file
2023-09-20 14:37:07 -04:00
tkucherera
5768514ba9
nodeattrib -s attrib.batch
2023-09-20 14:29:21 -04:00
Jarrod Johnson
f88b44dee2
Fix issues with imgutil
2023-09-20 10:13:34 -04:00
Jarrod Johnson
d0c97b7623
Add pieces of EL profiles
2023-09-19 13:14:07 -04:00
Jarrod Johnson
04505e1bbb
Break out partitioning and pagkacelist for EL profiles
2023-09-19 13:01:10 -04:00
Jarrod Johnson
d613d0f546
Add openbmc plugin for console
2023-09-18 16:03:48 -04:00
Jarrod Johnson
47fc233cce
Fix debian packaging for confluent
2023-09-18 15:48:38 -04:00
Jarrod Johnson
8f80add0f1
Enhance debian packaging for confluent
2023-09-18 15:19:10 -04:00
Jarrod Johnson
0a527f5f39
Add environment to firstboot ubuntu
2023-09-18 11:38:41 -04:00
Jarrod Johnson
3e8c6d1ea6
Correct syntax issue in el7 image2disk
2023-09-18 11:04:50 -04:00
Jarrod Johnson
a01b7c6503
Revamp and add missing bits to scripted ubuntu install
2023-09-18 10:30:52 -04:00
Jarrod Johnson
83e3627b47
Add pre.d to ubuntu 22 diskful
2023-09-18 10:19:50 -04:00
Jarrod Johnson
37b75ba777
Correct variable name on commit clear
2023-09-15 15:54:35 -04:00
Jarrod Johnson
aa5de3c6a3
Suspend handling of new socket connections while configmanager down
2023-09-15 15:48:37 -04:00
Jarrod Johnson
d4c535d038
Halt autonomous discovery handling while configmanager is down
...
This avoids triggering a potential large amount of churn on transiently
"unknown" systems
that are actually discovered.
2023-09-15 15:32:33 -04:00
Jarrod Johnson
94b8559777
Declare ready on becoming leader
...
Provide for leader scenario to correctly
flag configmanager as ready.
2023-09-15 15:28:16 -04:00
Jarrod Johnson
f2f25fe912
Implement ready tracking
...
When going through the
dramatic scenario of initializing collective,
take _ready down
so that other code can
pause operation appropriately.
2023-09-15 15:25:26 -04:00
Jarrod Johnson
c0629fcce5
Fix invocation of json restore change
2023-09-15 11:41:12 -04:00
Jarrod Johnson
4952e87309
Undo collective manager changes
...
Abort attempt to avoid duplicate startups, it was incorrect.
2023-09-15 10:52:13 -04:00
Jarrod Johnson
533244458d
Do not count as 'initting' until collective starts.
2023-09-15 10:37:51 -04:00
Jarrod Johnson
20f02b5ef7
Avoid searching switches for foreign nodes
...
Consult collective.manager
to decide to skip
consideration of a node, if
that node shouldn't be managed anyway.
This should avoid "cross-island" behavior for such
environments.
2023-09-15 10:07:14 -04:00
Jarrod Johnson
df47c6d0fd
Disable attribute notify during json restore
...
This is guaranteed to be a lot of churn very quickly, disable it for
now.
2023-09-13 17:03:05 -04:00
Jarrod Johnson
97ee8e2372
Cerrect the logic of duplicate discovery protection
2023-09-13 10:50:21 -04:00
Jarrod Johnson
74c6848a0b
Avoid redundant setting of known data
...
Setting attributes can be a touch expensive, since
there's a high risk
of this being old news,
check that discovery hasn't already set values
before trying to set them again.
2023-09-13 09:59:03 -04:00
Jarrod Johnson
b75979f3ec
Insulate confluent from fatal errors from discovery subscription errors
2023-09-12 16:59:53 -04:00
Jarrod Johnson
50d5cead06
Add prereq checks to EL cloning
2023-09-12 16:55:19 -04:00
Jarrod Johnson
e6b0b235e9
Fix image2disk for nvme clone targets
2023-09-12 16:53:32 -04:00
Jarrod Johnson
00eb9e3c9d
Fix full_net_config with missing address info
2023-09-12 16:49:15 -04:00
Jarrod Johnson
b77d8b1f21
Make yaml import conditional
...
Only Ubuntu requires it, but tends to have it.
Other distributions do not tend to have it.
2023-09-12 10:45:15 -04:00
Jarrod Johnson
d7190c893f
Correct networkmanager entries for boot over infiniband
...
When booting and infiniband comes up as the 'get started' nic,
make the entry use correct type so as to avoid
confusion later, particularly when confignet comes along to fixup
the configuration.
2023-09-11 13:11:17 -04:00
Jarrod Johnson
f82829aa0c
Add dependency checking to imgutil capture
...
This will more quickly indicate problems in a profile trying to capture.
First iteration will address Ubuntu.
2023-09-08 17:10:27 -04:00
Jarrod Johnson
203dabfb0b
Place nameservers on every NIC in netplan
...
netplan, like others, makes the questionable choice to designate DNS
as a NIC specific setting, despite not mapping well
to a NIC.
Since we model DNS like NTP, a global, just repeat the DNS config for
every interface. This redundancy is fine in testing multiple
interfaces.
2023-09-08 16:56:58 -04:00
Jarrod Johnson
9441221150
Have cooltera plugin adapt
...
As new sensors appear, be more adaptive
to continue tracking existing sensors.
2023-09-08 11:30:57 -04:00
Jarrod Johnson
8de6f4356d
Fix sense of new flag
...
Accidently made flag exactly opposite of intended
2023-09-07 15:12:43 -04:00
Jarrod Johnson
fe78034eaa
Add '-y' to imgutil build
...
Allow non-interactive imgutil build.
2023-09-07 14:56:07 -04:00
Jarrod Johnson
691d92f735
Avoid calling implicit nic config if nowhere to put it
...
If 'None' attributes are in use,
we'd have no where to
stick implicit configuration anyway.
2023-09-07 14:41:16 -04:00
Jarrod Johnson
8ca1f80ef6
Fix implicit nic in confignet
...
If the implicit IP
is not in any of the
attribute groups of net,
then auto-vivify from the normal place.
2023-09-07 14:36:56 -04:00
Jarrod Johnson
3cacbf283a
Fix cloning to NVME boot
...
The partition device names
have a different scheme
for nvme v. other devices.
2023-09-07 10:09:19 -04:00
weragrzeda
0993ef0c11
Merge branch 'lenovo:master' into master
2023-09-07 13:13:05 +02:00
weragrzeda
c950524386
geist.py outlet state fix
2023-09-07 13:08:33 +02:00
Jarrod Johnson
89e573207c
Remove irrelevant command from ubuntu cloning firstboot
2023-09-01 16:55:01 -04:00
Jarrod Johnson
f16cf4387f
Further Ubuntu enhancements
...
Add confignet to Ubuntu 20 and 22
Add syncfile to the ubuntu diskless/cloning
2023-09-01 16:40:02 -04:00
Jarrod Johnson
fa60a9dc9f
Add IPv6 support to confignet
2023-09-01 16:34:30 -04:00
Jarrod Johnson
2268d7f65a
Fix hotplug firmware in suse diskless
2023-09-01 13:51:17 -04:00
Jarrod Johnson
abd5f4e9f2
Fix shebang in firstboot on ubuntu cloning
2023-09-01 13:51:02 -04:00
Jarrod Johnson
f6e658c341
Add site CA to ubuntu profiles on install
2023-09-01 13:25:20 -04:00
Jarrod Johnson
44ec390f40
Add post.sh to ubuntu cloning
2023-09-01 12:29:27 -04:00
Jarrod Johnson
6ab91b50af
Add missing bits of Ubuntu diskless
2023-09-01 10:55:18 -04:00
Jarrod Johnson
1f32ef2310
Implement basic netplan support
...
Start with single links, ipv4 only for ubuntu.
2023-09-01 10:07:51 -04:00
Jarrod Johnson
22cb2bdc40
Handle Ubuntu hardcoded grub cfg
...
Ubuntu hardcodes grub.cfg to
another location.
Make a stub file as a flag to guide osimage
to know where grub.cfg goes.
2023-08-29 10:57:25 -04:00
weragrzeda
f633c93d0f
Geit PDU nodeinvntory
...
Please enter the commit message for your changes. Lines starting
with '' will be ignored, and an empty message aborts the commit.
On branch master
Your branch is up to date with 'origin/master'.
Changes to be committed:
modified: geist.py
2023-08-25 08:27:27 +02:00
Jarrod Johnson
610bc793b7
Merge branch 'master' into ubuntucloning
2023-08-24 10:53:33 -04:00
Jarrod Johnson
85375cc733
Fix hotplug firmware to use rootfs after boot
2023-08-24 10:53:25 -04:00
Jarrod Johnson
af4ca64da8
Fix hotplug firmware to use rootfs after boot
2023-08-24 10:53:00 -04:00
weragrzeda
6d87d11f5e
my changes to Eaton PDU sensors
2023-08-23 14:28:33 +02:00
weragrzeda
9591ff4718
Merge branch 'master' of https://github.com/weragrzeda/confluent
2023-08-23 14:26:51 +02:00
Jarrod Johnson
439143115e
Merge branch 'master' into ubuntucloning
2023-08-22 12:28:36 -04:00
Jarrod Johnson
b14b34bdbd
Add limited sensor support for Eaton PDUs
2023-08-22 12:28:07 -04:00
Jarrod Johnson
899ce7f055
Correct spelling of hooks directory in Ubuntu cloning
2023-08-17 16:27:45 -04:00
Jarrod Johnson
7e209e412a
Make confluent hook executable in ubuntu diskless
2023-08-17 16:16:36 -04:00
Jarrod Johnson
7051f467bb
Avoid a deprectationwarning in copytree handling
...
While trying to address one
deprecationwarning, we
hit another. Check if the
new function exists and use it,
falling back to distutils if
everything fails.
2023-08-17 14:49:44 -04:00
Jarrod Johnson
b88ccc292c
Avoid deprecation on distutils with newer python
...
Unfortunately, python 3.6 needs the distutils version, but we should avoid it altogether
by python 3.10, but by 3.10 the shutil.copytree can do it.
2023-08-17 14:36:38 -04:00
Jarrod Johnson
c47066d713
Include ubuntu material in packaging
2023-08-17 14:11:41 -04:00
Jarrod Johnson
8ddcf45e1d
Create links for ubuntu20.04 and ubuntu22.04
2023-08-17 14:03:55 -04:00
Jarrod Johnson
53d2b873a2
Package ubuntu 22.04 diskless
2023-08-17 11:28:29 -04:00
Jarrod Johnson
bc7dbeebea
Add ubuntu 22.04 diskless
2023-08-17 11:16:32 -04:00
Jarrod Johnson
1b2d8a0596
Merge branch 'ubuntucloning' of github.com:lenovo/confluent into ubuntucloning
2023-08-17 11:16:01 -04:00
Jarrod Johnson
f3e7d4ab67
Merge pull request #92 from sjtstg/nmcli-autoconnect
...
Confignet does not set autoconnect with network manager
2023-08-17 08:06:54 -04:00
Simon Thompson
b27542ec00
Confignet does not set autoconnect with network manager so disk installed images do not bring up interface on reboot
2023-08-17 10:30:36 +02:00
Jarrod Johnson
58cc9840b3
Prune out any netplan configuration, if exists
...
To mitigate chance of network configuration
being tanked by image based
net config, mask it when capturing.
2023-08-16 14:28:10 -04:00
Jarrod Johnson
84d23bb1fd
Begin work on Ubuntu cloning
2023-08-16 12:00:50 -04:00
weragrzeda
44405baaf3
nodeconfig ntp servers for smms
2023-08-16 14:30:05 +02:00
Jarrod Johnson
ae915cd735
Merge pull request #126 from weragrzeda/master
...
nodelist delimiters
2023-08-15 11:03:48 -04:00
weragrzeda
c7a323b370
nodelist delimiters fixed for py2 compatibility
2023-08-15 16:31:38 +02:00
root
9e070a14d4
nodelist delimiters
2023-08-15 15:58:10 +02:00
Jarrod Johnson
189ba525d3
Merge pull request #91 from sjtstg/ansible-play-fix
...
fix ansible support when multi stage plays are in playbook
2023-08-15 08:38:56 -04:00
Jarrod Johnson
5068cda2cf
Catch another sort of exception for non-rpm distributions
...
subprocess may produce a different sort of exception if
rpm doesn't exist at all
2023-08-14 09:23:00 -04:00
Jarrod Johnson
95c5253944
Remove CIDR prefix length in ubuntu 20 deployment
...
This produces invalid configuration for subiquity otherwise.
2023-08-11 15:01:55 -04:00
Jarrod Johnson
ca2dcd2dbe
Reference identity network in ubuntu 20.04
...
When using identity image, also use identity image
for network configuration.
2023-08-11 14:34:12 -04:00
Jarrod Johnson
dba6e7f378
Change Ubuntu 20.04 to be consistent to 22.04
...
This aims to bring
identity image deployment fully to ubuntu 20.0.4.
2023-08-11 13:44:37 -04:00
Jarrod Johnson
0b7247d386
Fix CentOS 7 routed deployment with identity image
...
Numerous issues prevented the identity image support from actually running,
correct them.
2023-08-10 16:27:42 -04:00
Jarrod Johnson
75add230b6
Skip API key init on checkonly runs
...
Checkonly does not require API key, and makes apiclient more dependent
on material that is unlikely to exist early in a deployment.
2023-08-09 11:13:09 -04:00
tkucherera
2c90227f63
"Firmware Update "
2023-08-09 10:48:09 -04:00
tkucherera
0cff70c607
firmware update
2023-08-09 10:37:35 -04:00
Jarrod Johnson
75082c4418
Move up creation of ca.pem
2023-08-03 14:03:36 -04:00
Jarrod Johnson
9a1c9eb43f
Improve ssh concurrency on websocket
...
ssh module was pausing input for the
entire websocket while doing the simple 'write' operation.
Change to background the actual
logon processing,
rather than blocking what should be a fairly trivial write operation.
2023-08-03 09:56:36 -04:00
Jarrod Johnson
89bd798f8b
Increasing time again, outlet count didn't factor
2023-08-02 15:20:29 -04:00
Jarrod Johnson
bf10e58f00
Bump version
...
With recent collective changes, bump the version to block connection with
older collective members until upgraded.
2023-08-02 13:43:41 -04:00
Jarrod Johnson
cbf2cdcdc5
Scale timeout with number of outlets
...
Delta PDUs seem to serialize outlet operation.
2023-08-01 16:08:51 -04:00
Jarrod Johnson
987587aaf8
Allow custom auth file to define valid roles
2023-07-26 16:37:55 -04:00
Jarrod Johnson
ad25c31d3f
Correct error in check_for_yaml function in auth
2023-07-26 16:15:36 -04:00
Jarrod Johnson
b1018d648e
Hook loading of /etc/confluent/authorization.yaml
...
This should permit custom roles to be defined.
2023-07-26 16:05:29 -04:00
Jarrod Johnson
a18d0f10b7
Clean up stale lvm devices files
...
During cloning, stale lvm devices file may cause
ugly output. Remove stale files before proceeding down steps
that trigger lvm warnings.
2023-07-26 07:54:41 -04:00
Jarrod Johnson
65ac3de21b
Take EL9 version of image2disk for improvements with parted supervision
2023-07-26 07:26:49 -04:00
Jarrod Johnson
c9d9a3cc54
Add EL9 cloning support
...
Main difference from EL8 is different grub strategy. To cope, capture
the uuid of new /boot and manipulate the
stub grub.cfg with the right uuid.
In EL8, the efi has the main grub, EL9 changes to have /boot host the 'real' grub,
causing us to have to modify the stub grub.
2023-07-25 17:09:37 -04:00
Jarrod Johnson
957b979dde
Reorder imports in configmanager to mitigate circular import
2023-07-24 13:38:44 -04:00
Jarrod Johnson
48c4a2e062
Have reconnects use new TCP connections
...
Current code was trying to reuse connections that would be useless,
explicitly go to new TCP connections for reconnection.
2023-07-24 12:31:32 -04:00
Jarrod Johnson
285a159ba5
Implement a number of improvements for collective
...
For one, remove 'non-voting' members from being leaders.
Large number of leader candidates create long delays for
converging on a valid organization. Further, some treat 'non-voting'
more roughly, inducing the worst case convergence scenario of unclean
shutdown of leader.
Convergence now happens fairly quickly for collectives with large
number of non-voting members.
During initial DB transfer, the leader would be tied up unreasonably
long handling the jsonification of a large configuration. Offload to a worker
process to allow the leader to continue operation while this intensive, rare
operation occurs.
Reliably run a reassimilation procedure for the lifetime of the leader.
This allows orphaned members to be prompted to join the correct leader.
Serialize the onboarding of a connecting member, and have redundancy more gracefully
paused. This avoids excessive waiting in lock and more deterministic timing
with respect to timeout expectations by the connecting system.
2023-07-24 11:11:39 -04:00
Jarrod Johnson
8ea2ba046e
Sort the IP addresses in nodediscover for consistent UI
2023-07-19 16:16:27 -04:00
Jarrod Johnson
f16daa44dd
Handle older python with addrinfo
...
While newer python omits '%',
older python includes. Change to handle
either form.
2023-07-19 16:04:25 -04:00
Jarrod Johnson
03fce4f762
Adjust sys.path logic in macmap and osimage
...
Ensure the sys.path logic
is before attempting
the relevant imports.
2023-07-19 12:15:01 -04:00
Jarrod Johnson
809099c8f8
Specifically wait for /dev/disk/by-label
...
When udev is populating the disk hierarchy, it can be a long time
before the 'by-label' is specifically ready.
Wait for that specific entry to come along before continuing to
check if there's an identity image.
2023-07-07 15:32:47 -04:00
Jarrod Johnson
a875f0d3e1
Correct syntax error in selfservice
2023-07-06 14:04:49 -04:00
Simon Thompson
6ee9f96e08
fix ansible support when multi stage plays are in playbook
2023-07-06 09:34:38 +02:00
Jarrod Johnson
fcc62b7cb7
Improve confluent scanning on newer python
...
Newer python changed the format of peer[0], adapt to the change
to use the socket info if not available in the peer[0] string.
2023-07-05 16:34:37 -04:00
Jarrod Johnson
11cb47c03e
Use natural sort on some self service calls
2023-07-05 16:18:49 -04:00
Jarrod Johnson
afc78513a1
Merge pull request #90 from sjtstg/ansible-fixes
...
Ansible fixes
2023-07-05 16:15:30 -04:00
Simon Thompson
45f22c3e31
when host is not in hosts file, group_vars is not loaded, change logic to emulate host being in hosts file with no groups to ensure group_vars is loaded which permits use of dynamic grouping in plays
2023-07-05 21:25:25 +02:00
Simon Thompson
d0f978548e
sort directory listing to make ansible plays and script order deterministic
2023-07-05 21:23:55 +02:00
Jarrod Johnson
052d16aa49
Avoid modifying PYTHONPATH
...
Since there's a possibility of cross-python invocation,
avoid modifying PYTHONPATH
2023-07-05 11:40:00 -04:00
Jarrod Johnson
7ddd2c2e6e
Correct mistakes in shebang adaptive behavior
2023-07-05 11:14:32 -04:00
Jarrod Johnson
9186c8142c
Fix incorrect reference in the smm validation by certificate
2023-06-28 13:13:26 -04:00
Jarrod Johnson
c07248d58e
Fix outlet control on Geist PDUs.
2023-06-27 08:04:16 -04:00
Jarrod Johnson
013de4f881
Adapt to ansible python runtime
...
Unfortunately, python being python, ansible may elect to install under a
different python runtime than confluent.
In such a case, hope that the ansible python can work.
Remove eventlet as a hard requirement, as
that is unlikely to be in ansible python.
This leaves msgpack, which is unavoidable, for now. But if it's in ansible python,
it's fine.
2023-06-26 15:41:44 -04:00
Jarrod Johnson
795b4c513d
Rework for connected temperature sensors
...
PDUs behave differently when a sensor module is
connected. Handle
that difference and
provide the relevant data.
2023-06-26 12:32:45 -04:00
Jarrod Johnson
4056264991
Correct keyname from previous fix
2023-06-23 17:01:50 -04:00
Jarrod Johnson
77c8e93a8d
Fix terminal actions on shared websocket
...
The full complement of functionality was not
interpreted in shared context
2023-06-23 16:33:30 -04:00
Jarrod Johnson
1695e222ec
Rename command to nodeapply, by popular demand
2023-06-22 14:16:54 -04:00
Jarrod Johnson
b2a793568a
Merge pull request #125 from tkucherera-lenovo/master
...
change timestamp log option from -d to -T
2023-06-22 14:14:59 -04:00
Jarrod Johnson
3ebd43fe0c
Bump genesis base version
2023-06-15 09:35:37 -04:00
Jarrod Johnson
2e20e0303f
Fix libbpf link
2023-06-15 09:22:52 -04:00
Jarrod Johnson
da2df63498
Update location of krb5
2023-06-15 09:20:37 -04:00
Jarrod Johnson
896a4ff1ff
Fix spec format
2023-06-14 16:05:08 -04:00
Jarrod Johnson
a14effa4f2
Undo change
...
Realized we need to install related rpm for efivar
2023-06-14 15:57:27 -04:00
Jarrod Johnson
66c79a5f42
Fixup handling of efivar license
2023-06-14 15:52:52 -04:00
Jarrod Johnson
389c37659e
Refresh more licensing material in genesis rpm
2023-06-14 15:47:17 -04:00
tkucherera
89af8661da
change timestamp log option from -d to -T
2023-06-12 10:51:29 -04:00
Jarrod Johnson
41437c511b
Fix when networkmanager breaks one of our connections
...
This usually happens with ipv6 link local used
in initramfs stage, after networkmanager may
mutilate the ipv6 connectivity.
2023-06-12 08:49:13 -04:00
Jarrod Johnson
75f0aaeee9
Allow session id through header
...
This permits a client to exert finer grained control
over the session id
than provided by cookie.
2023-06-08 11:30:32 -04:00
Jarrod Johnson
68f9688292
Drop SLP packets with error
...
Some implementations send
error for services they do not provide.
2023-06-08 08:02:59 -04:00
Jarrod Johnson
67204f79a1
Fix bug where dispatching a request could block all other activity
2023-06-02 11:06:44 -04:00
Jarrod Johnson
e9dd7da775
Fix syntax error in el7 identity image support
2023-06-02 08:55:27 -04:00
Jarrod Johnson
8f1be7c905
Fix Python2 compatibility issue with port forwarder
2023-06-01 16:50:06 -04:00
Jarrod Johnson
bc684b82b4
Implement identity image based deployment for EL7
...
Though older, it is still popularly used.
2023-06-01 16:49:17 -04:00
Jarrod Johnson
5e72d40c03
Fix compatibility issue with python2
2023-06-01 13:31:32 -04:00
Jarrod Johnson
7ab2aff7f2
Restore syntax of EL7 deployment
...
Inadvertent incomplete checkin
broke syntax of EL7, fix to have it
work as-is for now.
2023-06-01 09:20:17 -04:00
Jarrod Johnson
c3fc931ba4
Fix python2 compatibility issue for port forwarding
...
The measure for predictable port numbering
was done with python3 in mind, without consideration
of python2.
2023-06-01 09:18:36 -04:00
Jarrod Johnson
2c61cee72d
Merge pull request #124 from Tkucherera/nodeconsole_timestamp
...
Nodeconsole timestamp
2023-06-01 09:08:33 -04:00
Tinashe
190ec2473b
dump log to stfout with timestamps
2023-05-31 17:39:53 -04:00
Tkucherera
9ebb8f27ec
Merge branch 'xcat2:master' into master
2023-05-31 17:34:52 -04:00
Jarrod Johnson
0db7d4f9d2
Stall readback of PDU after outlet control
...
There is some lag after requesting an outlet change and
the outlet state actually changing.
2023-05-26 10:43:04 -04:00
Jarrod Johnson
5d1315098f
Enhance and extend check of node relations
2023-05-25 11:14:58 -04:00
Jarrod Johnson
fc29ddb913
Improve routed EL8 deployment and add debug shell on tty2
2023-05-24 11:02:23 -04:00
Jarrod Johnson
b06b77f5a5
Fix issues with confluent media deployment on multi-nics in routed env
2023-05-23 17:22:38 -04:00
Jarrod Johnson
97a5bf0806
Correct typo in suse 15 diskless boot
2023-05-19 14:50:04 -04:00
Jarrod Johnson
36e61f301a
Add a nodefreshen command
...
This aims to provide the same shortcuts as 'updatenode'
2023-05-18 15:03:29 -04:00
Jarrod Johnson
e476c7b9e6
Avoid deprecationwarning in python 3.10+
...
Newer python is not backwards compatible with
a constant. Attempt to use new
constant and fallback to teh old one
if unavilable.
2023-05-18 09:20:52 -04:00
Jarrod Johnson
a523df80e8
Handle newer SuSE
...
After SP4, suse drops mkinird requirement.
Switch to dracut -f in such a scenario.
2023-05-16 14:51:27 -04:00
Jarrod Johnson
8f4982e850
Fix build mistake in the cooltera plugin
2023-05-15 08:30:44 -04:00
Jarrod Johnson
a167d19441
Add module for cooltera nodesensors
2023-05-10 13:24:20 -04:00
Jarrod Johnson
2237e0e173
Add a retry mechanism for connecting socket
...
Timing is sensitive during the handshake, catch and retry
if it should fail.
2023-05-10 11:12:29 -04:00
Jarrod Johnson
b08b62614a
Have proxydhcp recover from faults
2023-05-10 08:44:31 -04:00
Jarrod Johnson
e93e4abd83
Add clear error when base profile doesn't exist
...
If the user specifies a wrong '-b',
indicate clearly that is the case,
and do so early.
2023-05-10 08:40:45 -04:00
Jarrod Johnson
430b24081c
Have apiclient timeout if IO hangs up
2023-05-09 16:04:24 -04:00
Jarrod Johnson
ec54ecc9cd
Fix tiling with different gravity
...
In some environments, the coordinates may be reported in a
different format. Handle the different context.
2023-04-28 09:20:31 -04:00
Jarrod Johnson
f787461759
Merge pull request #123 from Tkucherera/tmux_reuse
...
Tmux reuse
2023-04-28 09:18:44 -04:00
Jarrod Johnson
7312d8e092
Provide commented hints for mdns integration
...
mdns protocol is not currently used, but
put in breadcrumbs for
bringing it alive if
we have an openbmc handler.
2023-04-27 15:51:28 -04:00
Tkucherera
884a6be68c
Wkill like command ( #1 )
...
* wkill like command fix
* tmux session resuse
---------
Co-authored-by: Tinashe <tkucherera@lenovo.com >
2023-04-27 15:46:40 -04:00
Tinashe
a35a7e74c3
tmux session resuse
2023-04-27 15:39:32 -04:00
Jarrod Johnson
ffdf799713
Advance mdns support
...
At this point, the protocol handler
seems up to the task of describing openbmcs
2023-04-27 08:59:39 -04:00
Jarrod Johnson
b9d0da0416
Correct mistake in the gathering of valid nodenames
2023-04-26 15:37:08 -04:00
Jarrod Johnson
3fd930137d
Begin work on mdns protocol support
2023-04-21 16:14:25 -04:00
Tinashe
71a263366d
wkill like command fix
2023-04-21 10:22:10 -04:00
Jarrod Johnson
7b150773df
Extend multi-nic guessing to Ubuntu 20/22
2023-04-20 15:45:32 -04:00
Jarrod Johnson
53f4665358
Correct issues in Ubuntu 18 deployment
2023-04-20 14:48:39 -04:00
Jarrod Johnson
e5fff430be
Explicitly clear logonwaiters on discard of a session
...
When a session is being discarded, it
may inadvertently hold onto logonwaiters.
The IPMI session may be reused, but the context is new and those
dead contexts can consume memory unreasonably.
2023-04-19 10:22:33 -04:00
Jarrod Johnson
55da173b27
Correct missing parameter in Geist
...
Geist support was missing a variable in the refactor.
2023-04-19 10:20:34 -04:00
Jarrod Johnson
55a796af82
Correct some errors in the Ubuntu 18 support
...
An ommited end clause as well
as some bashisms.
2023-04-12 13:23:39 -04:00
Jarrod Johnson
123d190f12
Extend network and deployment server checking for Ubuntu 18.04
...
When doing network evaluation in ambiguous contexts,
spend some time checking each nic and each candidate target ip address.
This may take longer, but options are limited in a routed context.
2023-04-12 13:04:08 -04:00
Jarrod Johnson
305a3a06d2
Ensure $HOME is set during firstboot
...
systemd tends not to set environment variables. However some firstboot
scripts generally expect $HOME to be correct.
2023-04-12 11:22:27 -04:00
Jarrod Johnson
024677d7de
Try EL7 to build the old addons
2023-04-07 16:50:20 -04:00
Jarrod Johnson
fb31a68818
Add profile.yaml to ubuntu18.04 stock profile
2023-04-07 16:26:32 -04:00
Jarrod Johnson
526a248963
Add ubuntu18.04 to build script in other location
2023-04-07 16:17:37 -04:00
Jarrod Johnson
86d9d6fc2f
Add ubuntu18.04 to build
2023-04-07 15:46:29 -04:00
Jarrod Johnson
2bdc53722b
Further advance ubuntu 18.04 support
2023-04-07 15:45:31 -04:00
Jarrod Johnson
25b0f45e6f
Merge remote-tracking branch 'lenovo/master'
2023-04-07 13:53:44 -04:00
Jarrod Johnson
f5b3682c08
Merge pull request #89 from erderial/patch-8
...
added functionality to check for net.*switch
2023-04-07 13:52:01 -04:00
Jarrod Johnson
b7ea27b939
Advance draft Ubuntu 18 support
...
Get most things automated for the targeted use case.
Still need to handle partitioning and end of install question, add firstboot and add
staged and complete step.
2023-04-06 16:07:55 -04:00
Jarrod Johnson
1fff15677d
Add el9bin correctly into build process
2023-04-04 11:55:23 -04:00
Jarrod Johnson
556d858d33
Address extraneous errors during build
2023-04-04 11:27:50 -04:00
Jarrod Johnson
0a02b010c9
Fix esxi build for new build strategy
2023-04-04 11:24:10 -04:00
Jarrod Johnson
08e19fbf6e
Provide a sample for fuse3 urlmount
...
When the time comes to transition, this will be useful.
The challenge is that existing images will likely have a 'distribution'
with fuse2 libs, so this isn't a transition to make lightly.
Definitely should be done for new distributions at least, current
distributions pending further investigation
2023-04-04 10:39:12 -04:00
Jarrod Johnson
2d16d5558c
Rework to build everything under el8 or el9 containers specifically
...
Make the build host less critical of an implementation detail
2023-04-04 10:19:13 -04:00
Jarrod Johnson
7f15e4af27
Change back to fedora
...
We need fuse-devel for now, since urlmount is written against older fuse
2023-04-04 09:44:04 -04:00
Jarrod Johnson
34313f4041
Change to EL9 for the new-wave util builds
2023-04-04 09:32:25 -04:00
erderial
9bb402a1b8
Update confluent_selfcheck
2023-04-03 10:27:07 +03:00
erderial
13d4c57ee2
changes done as per request
2023-03-31 19:32:43 +03:00
erderial
88c47c9254
added functionality to check for net.*switch
...
added functionality to check for net.*switch
2023-03-31 16:43:15 +03:00
Jarrod Johnson
181aa876a7
Draft initramfs addons for Ubuntu 18
...
For older Ubuntu 18, the automated installer is debian-installer. Derive from the
prototype debian work, with same limitation about more limited network bringup that
we are stuck with from Debian limitations.
2023-03-30 16:36:40 -04:00
Jarrod Johnson
a0dbb90c77
Handle mismatched alpha and numeric in hyphenated string
...
If 123abc-abc123 were attempted, it would produce
a strange error
when it encounters a string compare to number.
Detect the scenario and treat it like similar situations.
2023-03-30 14:21:22 -04:00
Jarrod Johnson
cb129789b8
Properly recognize old ubuntu server install media
...
Older media designed around
debian installer requires
different handling.
2023-03-30 08:33:18 -04:00
Jarrod Johnson
7ac778106e
Also skip over failure to broadcast SSDP
2023-03-29 16:55:12 -04:00
Jarrod Johnson
f808c542e4
Ignore forbidden transmits on multicast
2023-03-29 16:53:40 -04:00
Jarrod Johnson
2a3bc61be3
Avoid overwriting groups on a redefine
...
When a node is being redefined, do
not populate groups.
That is only needed when truly defining for first time.
2023-03-29 09:28:52 -04:00
Jarrod Johnson
73fb54ccbc
Add more manual licenses to the kernel
2023-03-28 17:02:53 -04:00
Jarrod Johnson
578bd9702a
Sample script to install a cert into an XCC
2023-03-24 15:56:26 -04:00
Jarrod Johnson
ca5f19a4f1
Sample script for getting a CSR from an XCC
2023-03-24 15:46:21 -04:00
Jarrod Johnson
717df579aa
Add firmware to Geist support
2023-03-17 16:02:55 -04:00
Jarrod Johnson
70b973b1cf
Refactor measurements in Geist
...
Use common code
for sensor translation.
2023-03-17 15:34:26 -04:00
Jarrod Johnson
48696ef63d
Begin adding sensors to Geist PDUs
2023-03-17 14:37:03 -04:00
Jarrod Johnson
ff025989c6
Restore spacing around float in nodesensors
...
The managed formatting needs
to be padded in the non-csv output.
2023-03-16 17:29:36 -04:00
Jarrod Johnson
872718c658
Add notation about alternate location of ansible plays
...
Make it known that plays may now be private.
2023-03-16 15:19:15 -04:00
Jarrod Johnson
47af869360
Allow ansible plays to be private
...
Since the node need not have access,
the ansible plays may be made private instead.
This enables potentially sensitive plays
to be protected.
2023-03-16 15:15:46 -04:00
Jarrod Johnson
f256b1cd4e
Handle more complex ansible configuration
...
Some plays expect the
inventory from /etc/ansible, detect
if that inventory *could* apply, use if it can.
ansible users generally anticipate leveraging the implicit '.' in the role
path,
chdir to meet that expectation.
'become' in the play without 'become_user' can upset ansible runtime.
Since we are already root, we will just ignore the implicit 'become', since we already
match that behavior.
2023-03-16 13:24:46 -04:00
Jarrod Johnson
bfe03e6e01
Fix erronously dragging in CIDR to IPv4 configuration
2023-03-14 16:55:20 -04:00
Jarrod Johnson
8dc3dfd20c
Limit TRYNIC to only one NIC in ubuntu deployment
2023-03-14 15:36:24 -04:00
Jarrod Johnson
0cc588f8e9
Carry nic detection through to bottom of Ubuntu
2023-03-14 15:24:37 -04:00
Jarrod Johnson
e12578b6ac
Use media net config when media deployed
2023-03-14 13:32:20 -04:00
Jarrod Johnson
0366bbd26f
Place apikey where expected
2023-03-13 17:00:35 -04:00
Jarrod Johnson
5f4ab5ff80
Fix path to hmacfile
...
Since we are running
outside of chroot, need to adjust the $()
substitution.
2023-03-13 16:21:25 -04:00
Jarrod Johnson
88a6bccf12
Use b64 alphabet for b64
...
While POSIX hates +, b64 needs +
2023-03-13 16:20:17 -04:00
Jarrod Johnson
52c3e9d515
Do not care about port, let kernel decide
2023-03-13 11:19:11 -04:00
Jarrod Johnson
50a4ee2c6d
Have a quick sample script to get LLA of USB nic peer
2023-03-13 11:15:31 -04:00
Jarrod Johnson
15ff24fccd
Correct syntax errors in auth.py
2023-03-10 16:38:47 -05:00
Jarrod Johnson
d9cc9112f4
Add identity image deployment to Ubuntu
...
Support the api arm token
and media network
config for Ubuntu.
2023-03-10 16:23:48 -05:00
Jarrod Johnson
5418d9ea97
Place a common script for setupssh
2023-03-10 16:05:29 -05:00
Jarrod Johnson
2aeade1e74
Merge pull request #88 from erderial/patch-6
...
updated with custom yaml file for auth
2023-03-09 15:48:12 -05:00
erderial
85f9dc12fb
Update auth.py
2023-03-09 22:38:37 +02:00
erderial
56dea2422a
Update auth.py
2023-03-07 21:08:01 +02:00
Jarrod Johnson
8b89232922
Do not get collective member when collective doesn't exist
2023-03-06 16:59:07 -05:00
Jarrod Johnson
22c464e092
Only add self to collective if self not yet in collective
...
Previously, it was safe to just do all the time, but now it may lose
the role.
2023-03-06 16:49:03 -05:00
Jarrod Johnson
4d9b11bc55
Fix quorum when there is no collective yet
2023-03-06 16:38:09 -05:00
Jarrod Johnson
baa365fcac
Implement non-voting collective members
...
Provide for applications
where only a small subset of collective
members should be
considered to count
toward whether the collective
can proceed.
Commonly, 'service' nodes may
be numerous to do work, but may all want to go offline
during a maintenance window.
2023-03-06 11:56:15 -05:00
Jarrod Johnson
a385b1e93d
Try strategy to have confignet run
...
confignet is special, it is designed
to work when networking
isn't right. So have it run during firstboot
in case post fouled up
the network for firstboot.
2023-02-28 12:12:36 -05:00
Jarrod Johnson
733b6853dd
Up newly added interfaces as a matter of course
2023-02-28 12:04:20 -05:00
Jarrod Johnson
b4182cd4b5
Fix formation of error message
...
Use format to take in the parameters regardless of type
2023-02-27 14:55:01 -05:00
erderial
cf2f5aac7b
Merge branch 'lenovo:master' into patch-6
2023-02-27 18:27:39 +02:00
Jarrod Johnson
9f7e53701e
Avoid latching onto USB nic in a vswitch as 'the nic'
...
In esxi, some builds may have USB nic brought up in a vswitch.
Detect and avoid that scenario.
2023-02-27 10:43:40 -05:00
erderial
3b9f9abdd9
Merge pull request #2 from erderial/erderial-patch-1
...
updated auth.py with some changes
2023-02-27 17:36:20 +02:00
erderial
b800aa032e
updated auth.py with some changes
...
updated auth.py with some changes. Need to add the check_for_yaml() function to main.py as well
2023-02-27 17:10:17 +02:00
Jarrod Johnson
70d8a1059c
Consistently treat bytes as bytes in ssh
...
In Python3 systems,
there would be confusion
about bytes versus str.
Fix this so that ssh can work more consistently.
2023-02-24 15:47:20 -05:00
Jarrod Johnson
59b07665ab
Modify float formatting again
...
Make sure at least one decimal is in a float.
Maximum precision of 5 past.
2023-02-24 12:03:43 -05:00
Jarrod Johnson
5ea214a726
Use eventlet subprocess
...
sshutil uses eventlet subprocess,
making calledprocesserror
hard to catch.
Adjust to consistently use same
subprocesss module.
2023-02-22 16:34:13 -05:00
Jarrod Johnson
b99034f539
Improve reliability of collective join
...
While servicing an enrollment,
there's a window for a collective
member to be 'defined' but not
yet active, meaning quorum may transiently be lost as multiple enrollments progress.
Serialize enrollments by holding the enrollment process open.
Also, there is a chance that a transient transfer error may occur during loading
of the DB. In such a case, restart
the connection rather thn aborting.
2023-02-22 16:11:38 -05:00
Jarrod Johnson
6df2e822a5
Correct api call in discovery
2023-02-22 09:34:32 -05:00
Jarrod Johnson
2379f6f90f
Change nodesensors format of float
...
Floats are either unnecessarily long
in normal output, or too unconstrained in CSV output.
Normalize to as many digits as 'makes sense' up to 5 digits.
5 miight seem a bit much, but one common metric is kWh, which may need
that precision over short intervals.
2023-02-22 08:41:46 -05:00
erderial
8940247164
updated with custom yaml file for auth
...
Added 2 new function to check if the custom yaml file exists - /etc/confluent/authorize.yaml - and one to update the _allowbyrole and _deniedbyrole vars accordingly.
2023-02-21 15:13:17 +02:00
Jarrod Johnson
77ba0acee6
Merge pull request #122 from Tkucherera/nodeconsole-kill
...
nodeconsole <noderange> kill: added functionality for closing open win…
2023-02-16 16:37:07 -05:00
Tinashe
b2c773bb84
nodeconsole <noderange> kill:added functionality for closing open windowed consoles
2023-02-16 15:54:21 -05:00
Jarrod Johnson
241800b1c9
Restore filename-only import
...
The open file handle as implemented
could not pass to the subprocess.
Rather than figure out how to open
and pass the filehandle,
simply let the subprocess
independently open the file
if it isn't passed.
2023-02-16 09:13:05 -05:00
Jarrod Johnson
abc639e32b
Preferentially support HTTPS on Eaton PDU
...
While Eaton does not do HTTPS by default,
it can be configured to do so.
Support when available.
Mitigate downgrade attack by
stickying the cert fingerprint.
If fingerprint is present, then refuse
to even think about port 80.
2023-02-15 17:03:35 -05:00
Jarrod Johnson
90af99e864
Add more clear error on syncfile mistake
...
If a bad node was included in
a syncfile, the error was highly misleading.
Provide a more clear indicaiton of the problem on failure.
2023-02-14 14:53:40 -05:00
Jarrod Johnson
09ce824c85
Fix bad lookup attempts on slashed addr
...
While this should in theory be
harmless, it exacerbates some
DNS setups that would look
up the normal result quickly,
but would stall on
a bad lookup.
2023-02-14 14:53:40 -05:00
Jarrod Johnson
9c1e7a7142
Allow interfaces to supersede default
...
In some scenarios, the 'default'
interface is overlapped by another connection, either
identical or as a superset in a bond.
Whittle down the default
interface if superseded
to mitigate duplicate interface setup.
2023-02-14 14:53:40 -05:00
Jarrod Johnson
36195198a6
Add fallback for newer msgpack
...
Newer msgpack refuses the encoding argument, use raw=False instead.
Further, newer msgpack refuses to accept int as key by default.
Opt into it as the risk is hash collision due to msgpack int being used directly, and
we aren't dealing with untrusted
peer (we only talk to ourselves).
2023-02-14 14:53:40 -05:00
Jarrod Johnson
3798a33213
Merge pull request #121 from Tkucherera/nodeconsole
...
nodeconsole documentation: passthrough options
2023-02-14 08:45:43 -05:00
Tinashe
251b307bd7
nodeconsole documentation: passthrough options
2023-02-14 08:27:25 -05:00
Jarrod Johnson
bb7a72db65
Fix for ipv6 deployment
...
Need to avoid double-bracketing of the server and also disable globbing
so curl does not mistake the ip address for a glob attempt.
2023-02-13 09:36:42 -05:00
Jarrod Johnson
fcde113e08
Add a check of dns.domain to selfcheck for node
2023-02-08 14:45:16 -05:00
Jarrod Johnson
a02f617b3d
Add DDR5 dimm to nodeinventory CLI output
2023-02-07 14:01:18 -05:00
Jarrod Johnson
7f1ac92fc9
Store mgr from confluent= specificate
2023-02-01 16:51:21 -05:00
Jarrod Johnson
8cf97833ab
Fixes for certificate directed discovery
2023-02-01 13:09:40 -05:00
Jarrod Johnson
3e747069d9
Try to get verified bay from SMMs
...
With V3 systems, we can now ask
the SMMs for the certificates
and use that for a verified
measurement, regardless of
whether the XCC is returning
the correct bay number.
2023-02-01 12:57:27 -05:00
Jarrod Johnson
c687da4d5f
Tweak architecture override on import
2023-01-31 15:57:41 -05:00
Jarrod Johnson
340ccc422c
Specify check for arch override of addons.cpio
...
For now, keep using x86_64 as
default, but allow overrides
for other architectures.
One day it may be cleaner to move all addons.cpio to
arch specific subdirs.
2023-01-31 15:27:45 -05:00
Jarrod Johnson
2c3afac576
Restructure aarch64 addons
...
Avoid tripping over current copy over, prepare
for smarter selection by architecture.
2023-01-31 15:10:49 -05:00
Jarrod Johnson
8e1cc63ac0
Correct spelling of keyword argument in ipmi
2023-01-31 15:00:22 -05:00
Jarrod Johnson
dc6c7c1acc
Make sure both el8 and el9 binaries are packed
2023-01-31 13:29:24 -05:00
Jarrod Johnson
5c309db47c
Further ARMv8 support
...
Handle aarch64 differences in
at least some distributions.
2023-01-31 11:20:40 -05:00
Jarrod Johnson
976e9ef563
Bump version on genesis
2023-01-31 09:10:23 -05:00
Jarrod Johnson
0efd2a4d74
Fix the amended license gathering
2023-01-31 08:58:56 -05:00
Jarrod Johnson
424830471d
Note how to fetch srpms associated with genesis
2023-01-31 08:54:03 -05:00
Jarrod Johnson
23f33a8420
Revamp license gathering for genesis
2023-01-31 08:52:32 -05:00
Jarrod Johnson
521a58c1d9
Have a utility to generate NOTICE from tmux
...
tmux basically defers to the c files, so
generate a NOTICE file from c files.
2023-01-31 08:37:42 -05:00
Jarrod Johnson
ce375a1162
Merge pull request #120 from Tkucherera/master
...
Adding missing imports
2023-01-30 14:48:05 -05:00
Tkucherera
caee136012
Merge branch 'xcat2:master' into master
2023-01-30 14:15:53 -05:00
Tinashe
2e283f3442
nodeconsole: missing imports time and socket
2023-01-30 14:13:44 -05:00
Jarrod Johnson
2b01d9fbfa
Properly store all candidate host ip addresses
...
This is needed to ensure that mis-detected primary ip
falls through to another viable ip
2023-01-30 12:40:40 -05:00
Jarrod Johnson
627bc9ffe3
Modify pkglist for aarch64
2023-01-27 12:14:37 -05:00
Jarrod Johnson
3e71e103b1
Fix unpacking of el8 and el9 built sources
2023-01-27 10:47:27 -05:00
Jarrod Johnson
a90cd8515e
Tweak osdeploy for ARM setup
2023-01-27 10:43:29 -05:00
Jarrod Johnson
284d042afe
Merge pull request #119 from Tkucherera/master
...
nodeconsole windowed and tiled functionality
2023-01-27 09:33:45 -05:00
Tinashe
2cc134adeb
nodeconsole: allow for passthrough args
2023-01-27 09:30:46 -05:00
Jarrod Johnson
02e242ec4e
Restore link local cert in apiclient
2023-01-27 09:13:47 -05:00
Jarrod Johnson
1777223232
Fixes for osdeploy arm ipxe init
2023-01-27 08:40:31 -05:00
Jarrod Johnson
648290ffbc
Begin implementing aarch64 deploy support
2023-01-27 08:00:38 -05:00
Tinashe
c9b72225a9
nodeeventlog timeframe documentation
2023-01-26 10:37:30 -05:00
Tinashe
3433635e9b
nodeeventlog: timeframe option
2023-01-26 10:16:33 -05:00
Tkucherera
7a6c4fc5b2
Merge branch 'xcat2:master' into master
2023-01-26 10:05:04 -05:00
Tinashe
f176a836ae
nodeecentlog: add timeframe option
2023-01-26 10:01:02 -05:00
Jarrod Johnson
ce324e90f7
Draft spec to generate addons-aarch64 files
2023-01-25 12:54:03 -05:00
Tinashe
23ea53ab55
console geometry 100x31
2023-01-24 11:18:21 -05:00
Jarrod Johnson
d14d28caf8
Confirm TLS connectivity when scanning hosts
...
In certain environments, Confluent may have an IP address that
is fake, but then there is elsewhere with that same IP for real.
To mitigate this, follow up basic connectivity with proof of having
an associated certificate.
2023-01-24 08:22:00 -05:00
Jarrod Johnson
0008998680
Add api method to request all mac data
...
This will provide easy way for
client to get FDB data, potentially
for use in conjunction with discovery data.
For now, leave LLDP out, as that isn't currently cached
at the confluent layer.
2023-01-23 13:37:29 -05:00
Jarrod Johnson
2e059b5887
Make an API for getting full discovery data in one fetch
...
This makes for faster nodediscover being possible, also
makes web management of the data easier
2023-01-23 11:47:33 -05:00
Jarrod Johnson
792e6472e4
Fix IPv6 addresses_match
...
fe80:: could be submitted during
collective startup, handle that problem appropriately.
2023-01-23 11:24:25 -05:00
Tinashe
b965f9b758
nodeconsole windowed and tiled functionality
2023-01-20 16:41:56 -05:00
Jarrod Johnson
a522e17a63
Merge pull request #118 from Tkucherera/master
...
nodeeventlog man page -l option
2023-01-20 14:49:11 -05:00
Tinashe
9f3b934ea4
nodeeventlog man page -l option
2023-01-20 14:24:32 -05:00
Jarrod Johnson
680ca2c4a2
Merge pull request #117 from Tkucherera/master
...
nodeeventlog: return last n entries
2023-01-20 12:51:16 -05:00
Tinashe
c3d0d255d3
nodeeventlog: -l return last n lines for each node
2023-01-20 12:13:15 -05:00
Tinashe
46d0a8d222
nodeeventlog: return last n entries
2023-01-20 10:09:52 -05:00
Jarrod Johnson
75f020f53c
Have apiarmed continuous be properly respected for shared secret
...
Remote media was erroneously being invalidated, despite user opting
out of the strict security.
2023-01-19 14:54:18 -05:00
Jarrod Johnson
c09e8448c2
Change to POSIX compliant range
...
POSIX allows ., but does not allow +. This was a problem with EL 8.4 libxcrypt,
though is not a problem otherwise.
2023-01-19 14:53:35 -05:00
Jarrod Johnson
01f939b871
Have SuSE path also not be bothered by inability to restart web service
2023-01-18 08:50:30 -05:00
Jarrod Johnson
1f23750356
Add affluent detection to confluent
...
Affluent agent will now have an SSDP
response. Add support for at
least recognizing and presenting
this in the discovery data.
2023-01-17 15:11:12 -05:00
Jarrod Johnson
d1265af828
Handle more errors
...
subprocess may throw other errors that aren't calledprocesserrors,
in newer python versions. Handle the case more broadly.
2023-01-17 10:04:10 -05:00
Jarrod Johnson
0929f059e2
Increase track size in dir2img
...
Larger images still run afoul of track limits
in mtools. Make tracks 4 times as big
to lower number of required tracks.
2023-01-17 10:02:51 -05:00
Jarrod Johnson
40c3f2da53
Actually display deployment state, when available
2023-01-13 13:02:17 -05:00
Jarrod Johnson
51e53405d8
Add attributes for profiles to report state
...
Profiles may want to report things
like success and error
2023-01-13 12:54:21 -05:00
Jarrod Johnson
d644d34b60
Add '-s' to nodeinventory
...
This allows a quick command to
get attributes into confluent
for manually added nodes,
without having to go through 'discovery' process.
2023-01-13 12:29:36 -05:00
Jarrod Johnson
7f31ae5b57
Fix syntax error
2023-01-13 11:15:51 -05:00
Jarrod Johnson
a09e1a3f8b
Handle IPv6 not set on IPMI nodes
2023-01-13 11:07:13 -05:00
Jarrod Johnson
50c073670d
Explicitly declare Textmode during autoconsole
...
This enables a workable console during text install,
while also allowing graphical to run
2023-01-13 10:54:29 -05:00
Jarrod Johnson
bc452b9b9a
Restore role-less group
...
If a group is missing a role,
coerce it to administrator
2023-01-13 10:01:52 -05:00
Jarrod Johnson
453d1f9ceb
Add IPv6 configuration support
...
For redfish and IPMI devices,
support new IPv6 static configuration
controls
2023-01-13 10:01:28 -05:00
Jarrod Johnson
feed125c86
Fix restoration of old confluent db
...
Old confluent DB may have None in role. This is no longer
allowed. Restore such entries by coercing them to 'Administrator'
which is how old confluent treated such users.
2023-01-12 08:38:55 -05:00
Jarrod Johnson
03fcd3f568
Fix indentation mistake in add_local_repositories
2023-01-11 09:53:01 -05:00
Jarrod Johnson
0e18a0c141
Fix routed nodeconfig in nodediscover
2023-01-09 08:55:46 -05:00
Jarrod Johnson
cc0962f5e5
Fix add_local_repositories in v6 environment
2023-01-06 15:35:36 -05:00
Jarrod Johnson
57b6d8677b
Fix syncfiles compatibility with IPv6
2023-01-06 09:33:06 -05:00
Jarrod Johnson
989066920d
Fix formatting of the confluent2hosts man page
2022-12-16 09:49:19 -05:00
Jarrod Johnson
d2a2383c92
Add man page for confluent2hosts
2022-12-16 09:44:52 -05:00
Jarrod Johnson
92a4b81247
Fix sample featuring non-existant attribute
2022-12-15 16:04:48 -05:00
Jarrod Johnson
130fce0320
Prevent bulk renames from stomping on itself
...
If multiple things try to renam to the same thing, block the action.
2022-12-15 15:42:10 -05:00
Jarrod Johnson
367854128a
Several fixes for imgutil
...
imgutil had a number of issues
contending with a distribution-less
image being packed/unpacked.
2022-12-14 16:51:39 -05:00
Jarrod Johnson
a5ee3a425f
Provide full path to DSA key for deletion
2022-12-14 16:15:30 -05:00
Jarrod Johnson
34741cfaf2
Clear terminal after full draw
...
A resize may need cleanup below
the output.
2022-12-14 16:14:34 -05:00
Jarrod Johnson
9dce7d31ea
Change screensqueeze to render in-line
...
Try to avoid clear screen and work within a logical
area under the command being run
2022-12-14 15:47:33 -05:00
Jarrod Johnson
f524114e56
Remove DSA key from install
2022-12-14 13:00:24 -05:00
Jarrod Johnson
511fbe987b
Suppress redundant output when writing to non-tty
2022-12-12 13:41:48 -05:00
Jarrod Johnson
7ccd1a42cd
Add r8152 driver to diskless/genesis
...
It is a popularly requested USB ethernet device for network booting
2022-12-12 12:59:37 -05:00
Jarrod Johnson
848e5acea1
Make nfs available to diskless
...
This allows nfs based flows to be built by users
2022-12-12 12:35:00 -05:00
Jarrod Johnson
e4dc57a810
Fix syntax of grep
2022-12-09 14:57:47 -05:00
Jarrod Johnson
0d5f48b116
Be more patient and more noisy about DHCP attempt over time
2022-12-09 13:05:10 -05:00
Jarrod Johnson
0a9fd8351b
Correct firstboot on remote media deployment
2022-12-09 11:19:06 -05:00
Jarrod Johnson
f55c25a52c
Avoid mangling ipv4 in url in media deployment
2022-12-09 10:59:50 -05:00
Jarrod Johnson
93f6641a16
Carry deployment hook through to firstboot
2022-12-09 10:33:23 -05:00
Jarrod Johnson
7e2ae4de62
Restore ipv4-only media based deployment
2022-12-09 10:11:09 -05:00
Jarrod Johnson
82fe68216a
Save deployer to mgr when media directed
...
Pre-empt the IPv4/v6 fallback designed.
2022-12-09 09:04:11 -05:00
Jarrod Johnson
fb98cbaa4a
Restore fallback to plain MANAGER specification
...
This is used in the media based deployment
2022-12-08 09:28:32 -05:00
Jarrod Johnson
2d5a016ad4
Tweak various issues for static analysis.
...
For autocons, though it's copying from a static source, use strncpy anyway,
despite the length being hardcoded already. This makes static analysis happier.
Terminate the buff with a NULL. This is superfluous as the strcpies that preceed
are guaranteed to null terminate, or exit the program.
In clortho, free(tmps), which is a valid leak, though clortho isn't long running.
Also, explicitly return 0, which is ultimately returned by main().
Static analysis could not figure out that padneeded implies that keylen is short of
chunk size, so change the check to be expressly the scenario that static analysis
was worried about directly, rather than indirectly.
Hint to static analysis that we don't care about the time as a time value by masking the
lower 32 bit explicitly. This was already happening, but static analysis was afraid
that we wanted this as time instead of just some mutating value.
2022-12-06 15:35:49 -05:00
Jarrod Johnson
0cb3e3d216
Add rebase to osdeploy man page
2022-12-02 11:35:10 -05:00
Jarrod Johnson
adbf96f23f
Use bytearray in PXE processing
...
Python 2 and 3 are inconsistent
with how they treat memoryview,
but they are consistent on bytearray
treatment
Since rqv is merely a cheaply sliceable view of rq, use rq directly
for functions where the difference
between 2 and 3 would matter.
2022-12-02 11:24:00 -05:00
Jarrod Johnson
c3576e4bd3
Enhance tab completion and extend some documentation and usage
2022-12-02 08:23:21 -05:00
Jarrod Johnson
84783c0c19
Add error check to noderange for nodedeploy
2022-12-01 14:09:25 -05:00
Jarrod Johnson
58a4c22aa2
Allow custom privilege levels through messages layer
...
If a user has created custom roles, designate custom. as
a prefix to indicate they really
mean what they say
2022-11-30 11:40:36 -05:00
Jarrod Johnson
dce80de9d5
Correct syntax error in sample script
2022-11-30 11:09:57 -05:00
Jarrod Johnson
c0f669cbdf
Add DHCP bringup to confluent= el8diskless
...
For routed, if user specifies confluent=, use that as a clue to
initiate a dhcp transaction to
facilitate routed requests.
2022-11-30 11:09:39 -05:00
Jarrod Johnson
2e20341ea0
Have imgutil exec attempt to provide source repos
2022-11-30 10:15:12 -05:00
Jarrod Johnson
57d01ddcaa
Base all web forwarding from 3901
...
This makes the web forwarding more predictable for
firewall rules
2022-11-28 15:17:59 -05:00
Jarrod Johnson
05bbd8f63a
Further refine pxe logging and fix external DHCP pxe
2022-11-22 11:08:45 -05:00
Jarrod Johnson
bb54ca0f8f
Fix mistake caused by erant paste
2022-11-22 09:31:39 -05:00
Jarrod Johnson
2c7b58d47a
Put brakes on configuration if no gateway and target is remote
...
This configuration would certainly destroy remote connectivity.
2022-11-22 09:24:18 -05:00
Jarrod Johnson
7341164f36
Have pure proxyDHCP trigger discovery and logs
...
For users that fully delegate core DHCP, provide discovery and
logging for PXE as it comes in.
2022-11-22 09:09:21 -05:00
Jarrod Johnson
626aca0691
Implement proxyDHCP remote operation
...
Provide means to function if we are
only the proxyDHCP service, delegated
from DHCP server.
2022-11-21 13:26:37 -05:00
Jarrod Johnson
132e40cdcb
Fix syntax mistak in attribute update
2022-11-21 10:18:58 -05:00
Jarrod Johnson
90a8d80b45
Rework trusted networks to attribute
...
This allows more flexibility and less oddity with how remote subnets are treated.
2022-11-21 09:57:27 -05:00
Jarrod Johnson
9eb2d25e37
Fix the subscribe/unsubscribe behavior in nodediscover client
2022-11-18 14:30:10 -05:00
Jarrod Johnson
963b35cd32
More aggressive timeout redfish checking
...
To make scans go faster, be more aggressive in
giving up on non-responsive targets.
2022-11-18 14:24:58 -05:00
Jarrod Johnson
9837ad7932
Add multi-address registration
...
This enables scanning a range or subnet
2022-11-18 14:14:31 -05:00
Jarrod Johnson
2c1e88d927
Provide usage when arguments omitted for nodegroupattrib
2022-11-17 14:04:16 -05:00
Jarrod Johnson
4af1dd5dd3
Omit extraneous related rpms
2022-11-15 11:46:52 -05:00
Jarrod Johnson
b6487df32a
Add missing ipmitool COPYING file to build
2022-11-14 16:20:42 -05:00
Jarrod Johnson
cee3943e4d
If node was found by key lookup, skip the sysdisco attempt
2022-11-14 15:26:52 -05:00
Jarrod Johnson
03e632b630
Add register to nodediscover command
...
This connects the remote registration
api to the usual CLI usage
2022-11-14 09:42:59 -05:00
Jarrod Johnson
6a9024d87e
Fix bad/unsupported targets in registration
2022-11-11 15:00:59 -05:00
Jarrod Johnson
9fa8a7124e
Pull the typical XCC scanning to remote registration path
2022-11-11 14:33:54 -05:00
Jarrod Johnson
c6079a1ee6
Add ability to register remote systems in discovery
...
To start with, support Lenovo XCC systems
2022-11-11 12:16:41 -05:00
Jarrod Johnson
ed94804b90
Change timezone substitution strategy
...
This uses a more self-evident breadcrumb to intuitively override
for users not wanting to use the confluent facility for timezone
adjustment.
There are other 'peculiar' substitutions that may prefer a breadcrumb
but they may require structure that would be tricky to implement
while also passing validation.
2022-11-10 08:57:04 -05:00
Jarrod Johnson
35abe0b9ad
Fix IPv6 address support in geist plugin
2022-11-09 15:11:25 -05:00
Jarrod Johnson
81c14db9dd
Pull EL8 IPv6 diskless to EL8
2022-11-08 16:37:00 -05:00
Jarrod Johnson
9179e02464
Fix diskless imgutil compatibility issues with EL9
2022-11-08 14:25:21 -05:00
Jarrod Johnson
48ac07e71d
Correct placement of initialization of the confluent_websrv variable
2022-11-08 11:33:43 -05:00
Jarrod Johnson
635b559c87
Fix IPv6 syntax for ssh certs in EL8 diskless
2022-11-08 10:51:31 -05:00
Jarrod Johnson
6865e3259e
Detect broken ipv4 and try ipv6
2022-11-08 09:45:08 -05:00
Jarrod Johnson
3d37692360
Add IPv6 to the imageboot script for EL profiles
2022-11-08 09:16:20 -05:00
Jarrod Johnson
20e6e1e521
Refresh functions to cope with v6-only usage
2022-11-08 08:52:29 -05:00
Jarrod Johnson
645abc2db7
Add [] to escape ipv6 prior to fetch of functions
2022-11-07 13:54:17 -05:00
Jarrod Johnson
578b05604b
Reject fe80:: as always not same
...
For our purposes, this same-subnet check doesn't
apply to link-local
2022-11-07 13:50:45 -05:00
Jarrod Johnson
e6e89bcee5
Steer v6 boot appropriately to v6 server
2022-11-07 13:25:26 -05:00
Jarrod Johnson
a21af719c2
Get ipv6 compatible deploycfg api call
2022-11-07 11:43:51 -05:00
Jarrod Johnson
13f3d4c1a6
First pass at adding ipv6-only boot for diskless el8
2022-11-07 11:07:45 -05:00
Jarrod Johnson
bd416f5000
Fix ipv4-free configuration in netutil
2022-11-03 14:43:49 -04:00
Jarrod Johnson
ca1f459364
Add remote scan to autosense startup
2022-11-03 13:59:14 -04:00
Jarrod Johnson
7e02987a8c
Extend rescan to cover remote switches
2022-11-03 13:31:57 -04:00
Jarrod Johnson
327a45ef33
WIP toward rescan hitting the renotify on subscripbed switches
2022-11-03 10:49:58 -04:00
Jarrod Johnson
f1a0d22fe5
Fix subscription handling for the discovery api
2022-11-03 09:58:57 -04:00
Jarrod Johnson
1e78f11c2b
Fix nodediscover CLI for subscribe/unsubscribe
2022-11-03 09:38:39 -04:00
Jarrod Johnson
7561b68b57
Rework subscriptions API
...
It's clear that the service will need
to explicitly track subscriptions
to enable rescan, for example,
and thus might as well restructure
the API around this information.
2022-11-03 09:21:15 -04:00
Jarrod Johnson
a6090877ff
Implement subscribe/unsubscribe in nodediscover
...
This provides a self-evident entry point from
CLI to extending the discovery to
affluent switches that support it.
This function will work with newer affluent
and Lenovo XCC2 systems.
2022-11-01 14:16:00 -04:00
Jarrod Johnson
eec20a6457
Rename discovery remote to subscription
...
This will implement a consistent vocabulary
2022-11-01 13:51:54 -04:00
Jarrod Johnson
52de243090
Merge pull request #116 from andywray/master
...
Update nodeconsole -w to work with arbitrary terminal types
2022-11-01 13:40:11 -04:00
Andrew Wray
9742a5d81b
Merge branch 'master' of https://github.com/lenovo/confluent
2022-11-01 13:30:18 -04:00
Andrew Wray
e20e978e04
Add xterm as default terminal for nodeconsole -w
2022-11-01 13:25:20 -04:00
Jarrod Johnson
299785a7b8
Add manifest data for diskless images
2022-11-01 13:01:14 -04:00
Andrew Wray
8a3105cd51
Update nodeconsole -w to work in arbitrary terminal programs.
2022-11-01 11:29:41 -04:00
Jarrod Johnson
4802c52854
If attempt to auto-restart service, reduce severity of result
...
Provide feedback as a warning rather than aborting the command entirely
2022-11-01 10:05:24 -04:00
Jarrod Johnson
4a3834b481
Add missing sample syncfiles to suse15 profiles
2022-11-01 09:26:17 -04:00
Jarrod Johnson
13065a3c9d
Add missing bits of suse 15 diskless profile
2022-11-01 09:10:17 -04:00
Jarrod Johnson
817038c6cf
Specify the valid values for apiarmed
...
Further, add more warning text around apiarmed, as it is a serious security
decision to take on continuous.
2022-11-01 08:37:03 -04:00
Jarrod Johnson
e0feb104ff
Add facilities to subscribe/unsubscribe from discovery agents
...
This connects the new affluent discovery facility
to local discovery view.
2022-10-28 16:58:30 -04:00
Jarrod Johnson
3afd6ecb5d
Temporarily enable IPv6
...
NetworkManage may go further out of it's way disabling ipv6, disable using proc to
overcome that
2022-10-28 12:10:03 -04:00
Jarrod Johnson
fd14221ab5
Avoid truncating console logging of firstboot
...
With significant firstboot output, there was a tendency
for tail to be killed before it relayed all the content.
Change to run the firstboot in a subshell in the background,
and have tail explicitly run until that subshell naturally
exits and then tail will cleanly exit
2022-10-28 09:30:12 -04:00
Jarrod Johnson
d534f29c57
Implement fastpath for delegated discovery
...
When an enlisted discovery agent
notifies, skip slow searches and use
the agents information directly.
2022-10-27 15:42:58 -04:00
Jarrod Johnson
f6d8294e83
Check IP viability before commencing configuration
...
This avoids a pointless partial configuration from proceeding.
2022-10-27 15:41:13 -04:00
Jarrod Johnson
6c806c8171
Fix tentative path for real path
2022-10-27 10:03:18 -04:00
Jarrod Johnson
8bf067cac8
Fix issues in the auth nets logic
2022-10-25 12:52:22 -04:00
Jarrod Johnson
0d2a1b856b
Fixes for the auth_nets configuration
2022-10-25 12:35:18 -04:00
Jarrod Johnson
4864d6abb0
Add mechanism to extend authentication to remote networks
...
This allows user to designate certain networks to be treated as
if they were local.
This enables the initial token grant to be allowed to a remote network.
This still requires that the api be armed (which should generally be a narrow window of
opportunity) and that the
request be privileged, it
just allows remote networks to be
elevated to be as trusted as local.
2022-10-25 11:26:44 -04:00
Jarrod Johnson
5794cd5d12
Modify firstboot to fall through to ipv6 if ipv4 failed
2022-10-25 08:21:42 -04:00
Jarrod Johnson
9964b33414
Fall back to v6 in more scenarios
2022-10-24 17:03:00 -04:00
Jarrod Johnson
be2959f365
Fall through to ipv6 if v4 is blank
2022-10-24 16:42:02 -04:00
Jarrod Johnson
31bf8f2a11
Numerous fixes for the cmdline directed deployment in EL8
2022-10-24 16:13:59 -04:00
Jarrod Johnson
6df9ca54ca
Ensure access to dracut utility funcitons in pre-trigger hook
2022-10-24 15:52:40 -04:00
Jarrod Johnson
c57090a670
Correct order of find and replace strings in by-mac boot
2022-10-24 13:26:06 -04:00
Jarrod Johnson
29ad1bd57e
Add various ways to look up boot file
2022-10-24 12:31:23 -04:00
Jarrod Johnson
f245f5cac5
Inject a hook for cmdline to specify confulent server
...
This enables a more manual approach
to indicate the deployment server.
This carries the assumption that a
normal OS autonetwork config
will get the node to the right network.
This is one step toward enabling a scenario where the target is remote and the DHCP is not going to relay, but instead the deployment feeds the DHCP a confluent URL entry point to get going.
Using this parameter precludes:
-Enhanced NIC auto selection. If the OS auto-selection fails to
identify the correct interface, the profile will need nic name baked in.
-Auto-select deployment server from several. This will mean that any
HA will require IP takeover be externally handled
This is of course on top of the manual process of
indicating confluent in kernelargs.
2022-10-17 13:07:18 -04:00
andywray
3da2ac61cc
Update nodeconsole man page with more -w examples
2022-10-15 21:52:14 -04:00
andywray
a25443c81d
Update help, check for null env variable
2022-10-15 21:29:56 -04:00
andywray
bd00059667
Update man page for -w with arbitrary terminal types
2022-10-15 21:09:31 -04:00
andywray
2c58320f32
Update nodeconsole -w to work with arbitrary terminal types
2022-10-15 21:03:35 -04:00
Jarrod Johnson
167ef0ae33
Merge pull request #87 from erderial/patch-5
...
Changed the Popen to skip the communication
2022-10-14 11:06:57 -04:00
erderial
8827e7efe8
Changed the Popen to skip the communication
...
Changed the Popen to skip the communication
added escape method
2022-10-14 18:03:51 +03:00
Jarrod Johnson
4ba0087c93
Close typo in edited attributes
2022-10-14 08:10:39 -04:00
Jarrod Johnson
c3afd45475
Normalize uid
...
python2 was crashing when getting unicode over the link.
2022-10-13 17:52:26 -04:00
Jarrod Johnson
730af73069
Correct open string in the attributes edit
2022-10-13 14:58:41 -04:00
Jarrod Johnson
84407e3d2b
Correct syntax error in pxe handler
2022-10-13 14:49:09 -04:00
Jarrod Johnson
a0702681da
Merge remote-tracking branch 'lenovo/master'
2022-10-13 12:14:41 -04:00
Jarrod Johnson
88b741e026
Add 'firmwarenone' ip method
...
Add a seting to allow user to suppress all DHCP offer during
PXE/HTTP activity. This enables configurations
where users want to externally manage filename explicitly in their own dhcp configuration.
2022-10-13 12:11:46 -04:00
Jarrod Johnson
4486fb5f81
Merge pull request #86 from erderial/patch-4
...
changed subprocess .run to Popen
2022-10-13 10:56:59 -04:00
Jarrod Johnson
8de7402b56
Add ability to get booturl redirect
...
In some environments, there's a desire to manually manage DHCP configuration.
In such a case, provide a url
that can be given to the dhcp server
to allow confluent to control the profile
without updating such a DHCP service.
With this change, a node can be told to boot:
http://confluentserver/confluent-api/booturl/by-node/n123/boot.ipxe
To be redirected to the currently applicable os profile.
2022-10-13 10:54:11 -04:00
erderial
dc62fc3f51
changed subprocess .run to Popen
...
changed subprocess .run to Popen to open separate subprocesses for simultaneous run of console windows.
2022-10-12 22:35:05 +03:00
Jarrod Johnson
23ec46bb8b
Add vlanid to the vmware deployment support
2022-10-12 13:08:57 -04:00
Jarrod Johnson
145be7ce31
Correct omission in private key access message during diskless boot
2022-10-07 16:47:48 -04:00
Jarrod Johnson
d5d0852890
Tighten redfish check timeout
...
The default timeout is overkill in the nodediscover scenario.
Notably, we can receive replies from unreachable IP addresses,
and those will extend rescan to the full timeout. The devices should
comfortably reply within 3 seconds, making scans exit in
a timely fashion.
2022-10-07 09:22:37 -04:00
Jarrod Johnson
4fed609050
Avoid enumerating members of a bond
...
Various parts of confluent that go to try to use
all the interfaces will now skip bond members.
One example problem is that joining the SSDP multicast
group for SSDP would cause the kernel to IGMPv6 out
on bond members as well as the bond itself. This change
ensures that the bond interface is only used and never
bypassed.
2022-10-07 08:52:02 -04:00
Jarrod Johnson
a77f211b8e
Fix json restore of users and groups
...
Defaults were erroneously used
do to oversight and mistake in teh json restore code.
2022-10-06 09:23:43 -04:00
Jarrod Johnson
3c29a5aa7f
Enable non-admin users for web gui
2022-10-06 08:49:00 -04:00
Jarrod Johnson
6eb4bf28e5
Another iteration to try to have IP adaptive syncfiles
...
It is likely that a client connects from fe80::, which
is explicitly omitted from ssh principals.
This time, have the client provide all currently set IP addresses
and the server will make a determination.
There remains the possibility it misconfigures a nic and tries to use that,
inducing failure. One strategy would be to filter the addresses and
only provide from the 'current' interface. Another is to just take
the hit as the node is likely going to suffer a lot from such a
misconfiguration anyway.
2022-10-05 12:23:47 -04:00
Jarrod Johnson
4cb222068f
Sync up EL7 syncfileclient
2022-10-05 11:53:59 -04:00
Jarrod Johnson
c612129d64
Have syncfiles attempt to use client ip, if feasible
...
When a node installs, it may not have it's node mapped address up,
or may not have one at all. Try to use the ip if it would be in the
same set that produced it's ssh certificate.
There remains a gap if a system has no static addressing *and* doesn't
map nodename to IP, but we have an impasse as the situation is too fuzzy
to grant a prinicpal in an SSH cert, and without that we can't securely
attempt rsync. For now, this scenario would still fail and I will
just hope that doesn't come up.
2022-10-05 08:31:37 -04:00
Jarrod Johnson
13ba95bb99
Give up on waiting for disks
...
Some profiles may have all disk support suppressed through blacklist until %pre comes
along to fix it. This avoids /dev/disk ever existing.
Wait up until 10 seconds before giving up. This gives disk subsystem a fair chance to
speed up and avoid a wait, with a fallback worst case of 10 seconds
2022-10-04 10:39:02 -04:00
Jarrod Johnson
75484db014
Fix macok incorrect value on finding the mac
2022-10-03 10:33:21 -04:00
Jarrod Johnson
0adfec0c44
Bump genesis version
2022-09-30 15:04:25 -04:00
Jarrod Johnson
4f67ed661d
Remove curl from genesis
...
It is redundant with python function, and drags
sasl along as a significant dependency.
2022-09-30 15:02:54 -04:00
Jarrod Johnson
763b157802
Fix syntax error
2022-09-30 12:36:12 -04:00
Jarrod Johnson
6e803e9fca
Add insecure protocol check
2022-09-30 12:22:39 -04:00
Jarrod Johnson
9ecd3e3ac7
Add API check
...
Particularly SELinux is a frequently missed configuration
facet, alert when the selinux is blocking.
2022-09-30 12:17:31 -04:00
Jarrod Johnson
ee3aef0a4c
Mark COPYRIGHT as legal in rpm
2022-09-30 11:02:55 -04:00
Jarrod Johnson
b7dfe20286
Add legal artifacts to confluent_server
2022-09-30 10:43:18 -04:00
Jarrod Johnson
28f4571c8e
Go for xCAT-neutral terminology
2022-09-29 16:09:46 -04:00
Jarrod Johnson
c647dec069
Add message on successful node attribute run
2022-09-29 15:45:07 -04:00
Jarrod Johnson
903de26dd8
Add node attribute checks to selfcheck
2022-09-29 15:27:12 -04:00
Jarrod Johnson
76491785db
Merge pull request #84 from erderial/patch-2
...
Adding wcons functionality for nodeconsole
2022-09-29 13:17:04 -04:00
Jarrod Johnson
b7a424f4cc
Merge pull request #85 from erderial/patch-3
...
Added -w flag for nodeconsole
2022-09-29 13:16:30 -04:00
erderial
e180ec0bc8
removed null from the flow
2022-09-29 20:15:55 +03:00
Jarrod Johnson
fcf342165c
Fix apiclient detection of default interface
...
It was failing to record the default interface in its checks.
2022-09-29 13:15:37 -04:00
erderial
d88207a468
Added -w flag for nodeconsole
...
Added -w flag for nodeconsole command, for xterm for now.
2022-09-29 19:24:57 +03:00
erderial
e09c594ffb
Adding wcons functionality for nodeconsole
...
Adding wcons functionality for nodeconsole for xterm first.
2022-09-29 18:58:06 +03:00
Jarrod Johnson
cf000d6872
Add node name resolution check
...
A common scenario for closed networks
is a misconfigured DNS situation.
Detect and report, as this can wreak havoc on a confluent instance.
2022-09-29 09:57:43 -04:00
Jarrod Johnson
04ee7a8c31
Add '-l' to nodersync command
2022-09-29 08:05:02 -04:00
Jarrod Johnson
5a62307d1e
Restore config by name
...
The change to allow CIDR syntax
broke for configurations that use name for
bmc 'address'.
Fix by letting getaddrinfo have a chance to process the ip before
trying to pton it.
2022-09-27 17:05:13 -04:00
Jarrod Johnson
e5360b3b2f
Have suse give up after a minute
...
If a network problem prevents the deployment nic from working,
give up eventually
2022-09-27 08:33:00 -04:00
Jarrod Johnson
484dbd9f74
Fix default interface detection
2022-09-23 16:10:55 -04:00
Jarrod Johnson
52626c56a8
Fix issues with the license restructure
2022-09-22 09:51:02 -04:00
Jarrod Johnson
885354f6b7
Rework license storage structure
2022-09-22 09:09:46 -04:00
Jarrod Johnson
0c08d8f6d3
Provide helpful error on bad user/password in delta pdu
2022-09-21 16:19:13 -04:00
Jarrod Johnson
25c66e163c
Some notes on TPM recovery
2022-09-21 10:50:05 -04:00
Jarrod Johnson
ba7832eb40
Fix restoring blocking on exit
...
When confetty/nodeconsole exits, correctly
clear NONBLOCK flag is an idempotent way.
2022-09-21 09:48:39 -04:00
Jarrod Johnson
440fcf2663
Further tweak el8 ident image support
2022-09-14 12:18:11 -04:00
Jarrod Johnson
0286b2e776
Further fixes to identity image in el8
2022-09-14 11:57:02 -04:00
Jarrod Johnson
aa2a8e2d5a
Adjust ported coreos ident image support to el8 install environment
2022-09-14 11:18:01 -04:00
Jarrod Johnson
65e97073e2
Add identity image support to EL8 scripted install profiles
2022-09-14 11:00:04 -04:00
Jarrod Johnson
5a935d99fc
Have SMM devices register cleanly
...
In remote discovery registration, the
SMM path was not fully implemented
2022-09-13 13:29:42 -04:00
Jarrod Johnson
785d7d40fa
Add COPYRIGHT notice
2022-09-09 12:50:38 -04:00
Jarrod Johnson
91f4ef9747
Attempt to fill in more missing metadata
2022-09-09 12:26:38 -04:00
Jarrod Johnson
9025918609
Fix missing information in packaging metadata
2022-09-09 12:10:32 -04:00
Jarrod Johnson
7cbd105ae3
Workaround TSM issue with redfish configuration
2022-09-09 12:04:38 -04:00
Jarrod Johnson
2bc2736da4
Fix neighutil invocation of ipn_is_local
2022-09-08 16:07:04 -04:00
Jarrod Johnson
4a8af0ad85
Fix assumptions about ip going into netutil
2022-09-08 14:35:16 -04:00
Jarrod Johnson
7b98b7dc00
Fix wrong uid after duplicate identity check
2022-09-08 09:51:21 -04:00
Jarrod Johnson
cde18bcd3a
Cap the number of deferred packets
...
Prevent deferred packets from growing endlessly
if activity is keeping the loop running.
2022-09-07 08:04:47 -04:00
Jarrod Johnson
60cfa1d3c5
Skip peer probe on remote
...
When remote ip is detected,
communicate by returning False
instead of None.
Use this indication to let ssdp
skip a transmit and growing
pending list in such a case.
2022-09-06 16:40:34 -04:00
Jarrod Johnson
596fcb0f4c
Implement mitigations for ovewhelming SSDP
...
First, for a given contiguous set of snoop activity, start ignoring a given peer during that contiguous chenk after it has been considered once.
Further, make get_hwaddr cheaper for attempts against
remote IPs.
To facilitate the above, create an efficient 'ip_is_local' to be
a relatively cheap function, with
potential to cache result in future
if it needs to be even cheaper.
2022-09-06 16:08:31 -04:00
Jarrod Johnson
7980534bad
Fix confluentdbgcli.py for python3
2022-09-02 15:11:30 -04:00
Jarrod Johnson
6c1f87aeb7
Add mechanism for copernicus to request any confluent
...
This can be used for network debug in a generic way, to identify vlan adjacency without regard to nodedoploy state or uuid matching.
2022-09-02 13:32:05 -04:00
Jarrod Johnson
1c811dbf3e
Fix python path automatically in confluent_selfcheck
2022-09-02 10:11:12 -04:00
Jarrod Johnson
503746131c
Add selfcheck to packaging
2022-09-02 09:53:06 -04:00
Jarrod Johnson
a0037a305c
Add confluent_selfcheck to server package
2022-09-02 09:44:13 -04:00
Jarrod Johnson
d1d15f29c1
Add facility to fix confluent uuid problem
2022-09-01 13:26:25 -04:00
Jarrod Johnson
b98759698a
Sync up getinstalldisk and add another m.2 model
2022-09-01 13:22:50 -04:00
Jarrod Johnson
20992b2d17
Add check for actual file download
2022-09-01 13:21:39 -04:00
Jarrod Johnson
67f0c8a81b
Add IPv6 and insecure boot checking
2022-09-01 13:17:17 -04:00
Jarrod Johnson
28331adced
Add TFTP and ssh key checks to checkconfluent
2022-08-31 17:30:41 -04:00
Jarrod Johnson
ed91e0f2f3
Have askpass delete itself
...
This causes ssh-add to give up, instead of endlessly rerunning
the askpass script.
2022-08-31 17:17:33 -04:00
Jarrod Johnson
99a5c454ba
Begin work on a sanity checker
...
Check various facets that are frequently not quite right, making
recommendations on how to correct.
2022-08-30 16:59:40 -04:00
Jarrod Johnson
908e51221c
Correct minor formatting mistake in warning
2022-08-29 12:22:14 -04:00
Jarrod Johnson
8277701af6
Rewrite site ssh even if
...
the /etc copy already exists.
IT may be that /var/lib/confluent is being repaired, in which
case just copy existng over while giving warning.
2022-08-29 12:16:35 -04:00
Jarrod Johnson
570611f22b
Have osdeploy initialize skip SSH regen
...
When generating new key materials, most people say 'yes' and cause problems
where they cycle valid keys without
realizing the significance.
Replace prompting with an emphasized warning instead.
2022-08-29 11:10:45 -04:00
Jarrod Johnson
2a3e6cd6f1
Change websocket dependency name in EL7
2022-08-26 08:16:22 -04:00
Jarrod Johnson
4e44188253
Ensure early existance of ca.pem
...
Prior to install, enable apiclient
to have the ca.pem where it would
expect it to be.
2022-08-25 16:45:00 -04:00
Jarrod Johnson
352da94005
Implement rebase feature ofr osdeploy
...
Permit user to opt into a rebase of a
profile, to pick up potential updates
from the confluent packaged stock
profiles for files the user has not yet
customized.
2022-08-25 15:21:49 -04:00
Jarrod Johnson
e774add916
Set timezone on diskless boots by default
...
During onboot, use confluent directed timezone
info to set the timezone if the
disk image is incorrect.
2022-08-24 16:09:05 -04:00
Jarrod Johnson
d72bac5faf
Add more to the SUSE profiles
...
Add exetensibility to pre and sample directories
2022-08-24 16:07:38 -04:00
Jarrod Johnson
93b7547c58
Enable IPMI for user if IPMI has been enabled globally elsewhere
...
Scenarios have come up with trying to repair partially
configured configuration, break
the global and per-account check
into separate concerns.
2022-08-24 10:13:53 -04:00
Jarrod Johnson
31b3d6ea06
Move manifest data into dedicated file
2022-08-24 09:29:48 -04:00
Jarrod Johnson
42b4944542
Fix build script for vtbufferd
...
Update for new licensing standard.
2022-08-23 16:08:25 -04:00
Jarrod Johnson
04526ae8cc
Update license to NOTICE file
...
Bundled third party license content is now described under NOTICE file.
2022-08-23 15:52:50 -04:00
Jarrod Johnson
d97c508d86
Add hash manifest of new os profiles
...
When importing an image and taking stock copy, mark the files to allow detection of stock
versus customized profile content.
This will be used by a rebase command to know when
to overwrite or when to leave a file alone.
2022-08-23 15:25:17 -04:00
Jarrod Johnson
801e43936c
Revise ESXi routed deployment
...
-Have apiclient set timeout on getting credential to avoid hang
-Change dcuiweasel to start shell earlier for better debug
-Do not expire the ident token if deployment is armed continuous anyway
2022-08-19 16:06:46 -04:00
Jarrod Johnson
a445107c7f
Fix setting privilege level alone for ipmi
...
The logic incorrectly had it depend on password also being present.
2022-08-19 09:10:52 -04:00
Jarrod Johnson
dde66c53c9
Dynamically ascertain name scheme for Delta pdu
...
Some delta pdus have different name schemes
than others, take the hit of
awkward parsing to autodetect.
2022-08-17 10:20:26 -04:00
Jarrod Johnson
57fcc8a243
Start SSH agent even on older ssh
...
The unusual path to automation key for syncfiles and ansbile
is most easily handled by ssh-agent, even if no passphrase
will be used
2022-08-16 15:06:26 -04:00
Jarrod Johnson
41c3c4fb5f
Handle metapackages
...
If a metapackage gets pulled in
as related, do not let it mess up
the license list.
2022-08-11 14:09:55 -04:00
Jarrod Johnson
7b3c1e5405
Capture license content from related packages
...
Some files that get gathered into genesis
have their license in a related rpm, but that related rpm does not otherwise get captured.
So pull all correlated license material
in the license capture process.
2022-08-11 13:42:36 -04:00
Jarrod Johnson
047cd6302a
Add wait for IP connectivity
...
After config, there may be a delay
before the configuration takes effect.
This delay can break nodeconfig.
Try to wait for the delay to pass.
2022-08-09 08:50:19 -04:00
Jarrod Johnson
f0c8eee956
Add facility to auto-exec nodeconfig on discovery
...
This permits more open ended node configuration when discovery happens.
2022-08-08 16:13:01 -04:00
Jarrod Johnson
1125e4c712
Advance concetpual debian support
2022-08-08 14:23:01 -04:00
Jarrod Johnson
2aed973a8b
Have apiclient check all hosts for connectivity
...
Further allow it to output the result and feed that to esxi startup.
2022-08-08 11:18:35 -04:00
Jarrod Johnson
078e755ec7
Actually feed preseed into config
...
It must be done to the live cdebconf state *and* preseed.cfg,
since one is referenced immediately and then discarded when
preseed read in.
2022-08-05 16:05:26 -04:00
Jarrod Johnson
e3ed54ebf3
Advance the bootstrap of debian installation concept
2022-08-05 14:05:27 -04:00
Jarrod Johnson
9cac0c1705
Amendments to confluent initialization
2022-08-04 16:51:33 -04:00
Jarrod Johnson
2fe852f122
Add draft of a debian-installer-startup script
...
This is a draft for use in debian profiles to get started
2022-08-04 16:27:58 -04:00
Jarrod Johnson
258c4970c0
Change makeksnet from yaml to json
...
Older vmware did just json, which is fine, just have to use
the json file that was there just in case something like this
came up.
2022-08-04 10:39:10 -04:00
Jarrod Johnson
610e7bf044
Constrain ip-less offers
...
PXE and HTTP client define a behavior for using non-address portion of an offer if the
offer has none. However, other clients, like
udhcpc will be confounded by such offers.
Ensure that client specifically sets VCI to indicate
it understand such an offer before replying.
This as yet generally doesn't matter as UUID is not sent by OS installers, however
some OSes can't do do API calls over LLA, and
thus we want to start allowing OS requests with
UUID and only offer when it makes sense.
2022-07-29 12:49:25 -04:00
Jarrod Johnson
6b95bc7932
Fix key name
2022-07-27 12:08:58 -04:00
Jarrod Johnson
35701cdf01
Allow ident net config to override deploycfg
...
In routed deployment, deploycfg will
be missing network info, use
the ident provided network if detected.
2022-07-27 11:41:29 -04:00
Jarrod Johnson
c1ad4357dc
Fix for loop variable name
2022-07-27 08:37:09 -04:00
Jarrod Johnson
9987cb5c03
Advance state of routed esxi deployment
2022-07-27 07:51:41 -04:00
Jarrod Johnson
e8d2f550b8
Draft work on ESXi identity image deployment
...
Prepare for routed deployment of ESXi
2022-07-25 17:05:30 -04:00
Jarrod Johnson
9fe156601b
Add netmask to net config data
...
Some clients may want to consume netmask
without going to the trouble of converting,
so provide the extra data a different way.
2022-07-25 15:54:07 -04:00
Jarrod Johnson
830c9e171f
Add IP detection on local segment from remote registration
...
If an ip address is missing, but linklocal is set, try to search the
local nics for a viable connection to use.
2022-07-22 17:17:35 -04:00
Jarrod Johnson
0ac2bce883
Have XCC use a null string for ipaddr
...
This avoids the remote discovery failure for now.
2022-07-22 13:31:11 -04:00
Jarrod Johnson
6f619bc896
Change ipaddr to a property for allowing logic
2022-07-22 13:23:47 -04:00
Jarrod Johnson
bdd5dddce0
Fix typo in log message
2022-07-21 11:20:31 -04:00
Jarrod Johnson
d61dcee4fa
Fix handling of explicit prefix
...
Switch to just ip in time and return prefix
length as int.
2022-07-21 11:06:01 -04:00
Jarrod Johnson
d385ad1a0a
Support explicit prefix in xcc discovery
2022-07-21 10:13:00 -04:00
Jarrod Johnson
ef2c7b5bbc
Fix errant reference
2022-07-21 09:57:29 -04:00
Jarrod Johnson
2256b341b9
Tolerate '/' in hardwaremanagement.manager
...
This paves the way to allowing CIDR syntax to
indicate prefix length for remote XCCs
2022-07-21 09:54:00 -04:00
Jarrod Johnson
79421a724f
Fix base64 decode of fingerprint
...
base64 was being done against wrong variable
2022-07-21 08:33:12 -04:00
Jarrod Johnson
7751a71851
Merge branch 'remote_discovery'
2022-07-20 16:22:01 -04:00
Jarrod Johnson
2d8bcb4c0f
Incorporate auto discovery for remote discovery
...
Avail ourselves of secure vouching to handle new and
replaced.
2022-07-20 16:21:25 -04:00
Jarrod Johnson
0dc7b532cc
Implement registration and retrieval
...
Remote discovery can now be registered by
switches.
2022-07-20 13:01:11 -04:00
Jarrod Johnson
97c520db10
Make error message more clear
2022-07-19 10:16:48 -04:00
Jarrod Johnson
480849640e
Make error message more clear
2022-07-19 10:16:18 -04:00
Jarrod Johnson
42055e2648
Merge branch 'master' into remote_discovery
2022-07-18 15:52:42 -04:00
Jarrod Johnson
789def17d1
Do not tail old content from firstboot
...
Tail only new content being fleshly logged
2022-07-18 09:35:40 -04:00
Jarrod Johnson
926f9e2cdd
Enable more plugins for collective routing
2022-07-13 08:58:31 -04:00
Jarrod Johnson
c627ac73ee
Make a specific error on nodesupport
2022-07-11 16:18:33 -04:00
Jarrod Johnson
2058d1fba8
Add ESXi 8 support
...
ESXi changes security policies, adapt
to navigate both old and new sorts of rules
2022-07-08 13:36:21 -04:00
Jarrod Johnson
beb4c66b65
Fix spelling in error message
2022-07-08 10:50:45 -04:00
Jarrod Johnson
f467cfe7c4
Add log message for mac interrogation of switch
...
Clarify when things go wrong due to certificate.
2022-06-30 13:28:26 -04:00
Jarrod Johnson
3bd11da807
Remove extraneous line from setupssh.sh
2022-06-30 13:27:39 -04:00
Jarrod Johnson
eaffac0433
Allow blanking a value to default a plugin attribute
2022-06-30 13:27:25 -04:00
Jarrod Johnson
500e083746
Enable ipmi user if required
...
If redfish models ipmi as an account type, and user wants ipmi, add it to the account.
2022-06-28 14:25:12 -04:00
Jarrod Johnson
29965f6ec9
Add a catch all to redfish for xcc
...
Newer xcc changes things yet again, but
we are comfortably in the firmware that can be bootstrapped
with redfish, so use that instead once we've cleared the
redfish incapable variants.
2022-06-28 14:24:48 -04:00
Jarrod Johnson
f65ff1268a
Add new state offline to confluent storage states
2022-06-28 12:15:54 -04:00
Jarrod Johnson
a54a9a5d09
Enable ipmi user if required
...
If redfish models ipmi as an account type, and user wants ipmi, add it to the account.
2022-06-27 14:34:37 -04:00
Jarrod Johnson
9b79da9522
Add a catch all to redfish for xcc
...
Newer xcc changes things yet again, but
we are comfortably in the firmware that can be bootstrapped
with redfish, so use that instead once we've cleared the
redfish incapable variants.
2022-06-27 14:12:51 -04:00
Jarrod Johnson
04c2b1a322
Provide an authenticated path for discovery registration
2022-06-22 16:47:40 -04:00
Jarrod Johnson
559a7ca7b8
Merge branch 'master' into remote_discovery
2022-06-21 14:56:56 -04:00
Jarrod Johnson
0a10311fea
Add more verbose ssh connection feedback
...
Make the nature of connecting more explicit and errors
more reliably holding the session up and asking for relog
2022-06-17 15:35:06 -04:00
Jarrod Johnson
715bcb2f50
Prevent shell session from playing console output
2022-06-17 14:54:41 -04:00
Jarrod Johnson
8d5ad0d4a6
Fix EL7 spec file syntax
2022-06-17 13:11:08 -04:00
Jarrod Johnson
1387a67b61
Correct spec syntax error
2022-06-17 12:37:20 -04:00
Jarrod Johnson
4b08273379
Move EL7 back to python2
...
EL7's python3 support is barren and would require a lot of dependency
work.
Move EL7 back to python2 and will deprecate EL7 support when we ditch
python2
2022-06-17 12:10:44 -04:00
Jarrod Johnson
e0c3232180
Fix syntax error in el7 prescript
2022-06-17 09:30:26 -04:00
Jarrod Johnson
bd95f00680
Fix EL7 typeo in postscript
2022-06-17 09:08:12 -04:00
Jarrod Johnson
bfecaa389d
Adjust to correct ntp for 9 and up
2022-06-17 09:06:33 -04:00
Jarrod Johnson
7aca7a19f9
Install apiclient in a normal location for EL7
2022-06-15 16:42:50 -04:00
Jarrod Johnson
c400671ad7
Add old profile compatible apiclient location
2022-06-15 16:39:55 -04:00
Jarrod Johnson
c96955b369
Add catch-all packaging for EL7
...
EL7 now precompiles and flags it in the packaging
2022-06-15 16:34:57 -04:00
Jarrod Johnson
2bb519c158
Fix EL7 deployment compatibility
2022-06-15 16:10:57 -04:00
Jarrod Johnson
e5c33cacd5
Change SuSE rpm name to pyyaml
2022-06-15 15:11:07 -04:00
Jarrod Johnson
03f0f16ed8
Change to dnspython for suse
2022-06-15 15:06:52 -04:00
Jarrod Johnson
0f815dc7d3
Switch to python3 for all builds
2022-06-15 15:00:19 -04:00
Jarrod Johnson
dbdc99905d
Update confluent server to python3 dependencies only
2022-06-15 14:31:32 -04:00
Jarrod Johnson
2d665fb816
Merge branch 'py2to3'
2022-06-15 12:42:04 -04:00
Jarrod Johnson
26e0fa8c91
Add swraid example to misc
2022-06-15 09:50:06 -04:00
Jarrod Johnson
83da1359df
Add a sample vroc 'pre' script for reference
2022-06-15 08:40:23 -04:00
Jarrod Johnson
0f1581f8f7
Add a sample script to fetch user/pass info from confluent db
2022-06-10 14:18:35 -04:00
Jarrod Johnson
13d4d1dd98
Ensure that python3 will execute before doing migrate
...
If python3 is not the executable name, prevent the restoration
attempt from happening.
2022-06-10 11:19:21 -04:00
Jarrod Johnson
db5c31030d
Migrate DB on start
...
If python2 db format detected, use python2 to
dump to text, then python3 to restore to
get the python3 native version
2022-06-09 16:23:35 -04:00
Jarrod Johnson
6f484aab53
Allow restore to replace unsupported format
...
Going from python 2 to python 3, the dbm format
goes from the default to unsupported.
This allows a python3 confluentdbutil restore to handle
a python2 dump of unsupported format.
2022-06-09 15:49:06 -04:00
Jarrod Johnson
44cf56857e
Add fallbacks to PyCrypto compatible names
...
Cryptodome is not always packaged with the
explicit form, fall back to the Crypto names
hoping that the user wouldn't be trying to use
PyCrypto is this day and age.
2022-06-09 10:48:12 -04:00
Jarrod Johnson
17e223e21c
Suppress stray fakecmdline output
2022-06-09 09:15:56 -04:00
Jarrod Johnson
5ee6d0ca5d
Fix ordering of arguments
...
The -text was between startdate and its argument
2022-06-09 08:30:03 -04:00
Jarrod Johnson
2825af19c4
Do not clutter the pem file with text
2022-06-09 08:04:15 -04:00
Jarrod Johnson
e9ac43f49e
Add autocons to bootloader config
...
In newer suse, the fake cmdline trick is fouled, so carry into
autoyast file
2022-06-09 07:55:42 -04:00
Jarrod Johnson
5ee0572f54
Change to using 'full' openssl ca
...
OpenSSL does not allow access to custom start
date without the full 'ca' facility, do the
work to set up the full CA and then
backdate certificates.
This does open the way for managed CA if required.
2022-06-08 17:10:11 -04:00
Jarrod Johnson
3da67db806
Fix early bailout of nodeconfig
...
Do not have nodeconfig bail out on first sign of trouble, attempt to continue.
2022-06-08 13:43:25 -04:00
Jarrod Johnson
826c9eedb0
Document -l in nodeconsole man page
2022-06-08 11:14:51 -04:00
Jarrod Johnson
af19e98ce8
Remove use of eventlet in client side
...
The client side does not use eventlet, so allow
fallback to the normal socket and select
to keep the client module whole in the
face of that missing.
2022-06-08 11:03:56 -04:00
Jarrod Johnson
0dcd1442c9
Avoid nodeshell/noderun getting stuck on stdin
...
Some applications will tend to hang on stdin if
stdin is readable. Provide /dev/null to suppress that behavior.
2022-06-08 10:21:08 -04:00
Jarrod Johnson
2f904d10e9
Fix identity yaml parsing
...
Switch to sed rather than trying to use head. There may or
may not be a second match, so need sed logic to understand
whether it's a match or not to keep or throw out.
2022-06-08 09:23:56 -04:00
Jarrod Johnson
fdaecf2cbc
Relay input errors to caller in dispatch
2022-06-07 13:36:31 -04:00
Jarrod Johnson
8bb565e938
Implement error on invalid attribute filter
...
This will cause noderange to probably error out.
Note that invalid attribute names starting with net, power, or custom are treated as always valid.
2022-06-07 11:45:06 -04:00
Jarrod Johnson
0b20e0b634
Fix confuent scan for python 3.9
...
Python 3.9 removes the scope from the string
address, put it back if missing since it's required
to actually be usable.
2022-06-07 10:55:56 -04:00
Jarrod Johnson
b32c343a0c
Switch to importlib for newer python
...
imp is deprecated, despite being much simpler,
so use importlib in python3.6+ distributions.
2022-06-07 10:35:08 -04:00
Jarrod Johnson
942121d73a
Remove unavaiable clear from el9 diskless
2022-06-07 09:48:52 -04:00
Jarrod Johnson
55f42bc909
Add el9 imgutil
2022-06-07 09:06:59 -04:00
Jarrod Johnson
84037420d1
Add el9 tree for diskless
2022-06-06 13:18:37 -04:00
Jarrod Johnson
e7bea0df45
Advance work on EL9 diskless support
2022-06-06 13:10:22 -04:00
Jarrod Johnson
94955dd091
Bring down track number
...
Use 2 heads with 4 sectors per track to get the track number down for
reasonable images.
Newer mtools forbids large track numbers.
2022-06-06 11:57:19 -04:00
Jarrod Johnson
739890471d
Support newer python that removes fromstring
...
Python 3.9 does not understand the fromstring function anymore.
2022-06-06 11:37:39 -04:00
Jarrod Johnson
0baa2eecab
Break out on deployment failure
2022-06-06 11:05:22 -04:00
Jarrod Johnson
46fec89460
Fix routed deployment api key usage
2022-06-06 10:15:54 -04:00
Jarrod Johnson
997bd3ac34
Implement outlet control for Eaton PDU
2022-06-03 17:06:37 -04:00
Jarrod Johnson
799050fea2
In-progress Eaton PDU support
2022-06-03 16:26:07 -04:00
Jarrod Johnson
80186f2c77
Add a delta pdu plugin
...
This has received limited testing, and the PDUs cannot be used with secure protocols
2022-06-03 10:24:44 -04:00
Jarrod Johnson
64b8893b80
Add a delta pdu plugin
...
This has received limited testing, and the PDUs cannot be used with secure protocols
2022-06-03 10:24:25 -04:00
Jarrod Johnson
ae4b5c5100
Amend nodeping behavior and documentation
2022-06-02 16:04:19 -04:00
Jarrod Johnson
f13df801fd
Merge branch 'master' into remote_discovery
2022-05-31 13:53:47 -04:00
Jarrod Johnson
83acdab216
Amend python 3.9 compatibility fix
...
Avoid checking None for is_alive or isAlive
2022-05-31 11:23:27 -04:00
Jarrod Johnson
b42dafb085
Fix python 3.9 compatibility
...
In python 3.9, the % is no longer included
in the first member of the address tuple.
Handle both scenarios by adding '%' in for versions
that seem to want to remove it.
2022-05-31 11:01:09 -04:00
Jarrod Johnson
b5f5ba69d2
Fix python 3.9 compatibility
...
Python 3.9 renamed an attribute on a threading object, try
both names to support old and new python
2022-05-31 10:18:42 -04:00
Jarrod Johnson
6d07dac46c
Fix ipmi missing logging state and trim el9 dependencies
2022-05-27 16:10:08 -04:00
Jarrod Johnson
e4e859c798
Fix invocation of monotonic_time
2022-05-26 18:07:19 -04:00
Jarrod Johnson
ff698ea06b
Merge branch 'webauthn'
2022-05-26 17:42:15 -04:00
Jarrod Johnson
9c7e23f29e
Add missing nodepower statuses
2022-05-26 17:41:54 -04:00
Jarrod Johnson
b638bb69f9
Change webauthn to use confluent user db
...
This allows persistence with the rest of the
configuration.
2022-05-26 17:41:16 -04:00
Jarrod Johnson
7072a85d79
Transition to multi-authenticator support
...
Provide a way to store a plurality of keys for a user.
This enables use of 'backup' authenticators.
2022-05-26 16:34:18 -04:00
Jarrod Johnson
9b6114f523
Break if stuck in loop for over a minute
2022-05-26 15:01:47 -04:00
Jarrod Johnson
3c3d6bb314
Fix auth handling of the session/info
2022-05-25 17:40:35 -04:00
Jarrod Johnson
f6a17b5f32
Have validate serve as session info request
...
This should facilitate login.
Further, provide a quick persistence for the
credential test backend
2022-05-25 15:58:20 -04:00
Jarrod Johnson
4773acb37d
Adapt geist to work with python2
2022-05-25 10:58:35 -04:00
Jarrod Johnson
e0079b5a86
Amend webauthn validation api
2022-05-25 10:58:02 -04:00
Jarrod Johnson
c93f09bc91
Provide hook to get registered credentials
...
This has to relax the session in getting and requesting validation.
2022-05-24 19:17:31 -04:00
Jarrod Johnson
9b39c96135
Begin work on webauthn support
...
Provide appropriate registration options as a first
step.
2022-05-24 10:22:34 -04:00
Jarrod Johnson
48d46bcfae
Add resolv setup to genesis
2022-05-24 08:27:36 -04:00
Jarrod Johnson
371942b0ce
Add myhostname to improve name resolution errors in genesis
2022-05-24 08:17:04 -04:00
Jarrod Johnson
a3cce144bc
Extend manager principals for ssh
...
When doing osdeploy initialize -l (not recommended usually),
add on more forms of the name and ip addresses
to be consistent with node ssh behavior.
2022-05-24 07:24:56 -04:00
Jarrod Johnson
f9d47bb0d3
Fix markingrequest as not implemented
...
The Geist PDU support inadvertently took down
unrelated parts of a request, fix by
properly showing not implemented in
a node specific way.
2022-05-20 08:35:43 -04:00
Jarrod Johnson
6068a29434
Merge branch 'master' of github.com:lenovo/confluent
2022-05-17 10:45:17 -04:00
Jarrod Johnson
8deadec7a6
Provide hook to override rungesis
...
Some applications may want much of the genesis
distribution, but want to have a bootstrap process
independent of confluent. Provide hooks either
through the identity image or the boot image itself.
2022-05-17 10:44:07 -04:00
Jarrod Johnson
da764fb99e
Merge pull request #83 from erderial/master
...
ndeping man page
2022-05-16 14:36:38 -04:00
erderial
56b112519d
Merge pull request #1 from erderial/Er-Nodeping
...
Adding nodeping man page
2022-05-16 21:25:39 +03:00
erderial
abb85d5034
Created nodeping file
2022-05-16 21:21:42 +03:00
Jarrod Johnson
eb99fbd8b2
Switch from clear buffer to sized memoryview
...
Use the recvmsg hint to mask out the buffer rather
than zeroing the entire buffer. This is more efficient
and further improves efficiency of parsing of the packet.
2022-05-14 18:35:15 -04:00
Jarrod Johnson
54741517f1
Clear DHCP buffer between recv
...
Very large PXE requests can leave residual
information that small, non-pxe requests will
interact poorly with, leading to spurious pxe-client
with cloned uuid of most recent large request.
Clearing between IO normalizes the state to avoid the bleed
over.
2022-05-14 18:12:19 -04:00
Jarrod Johnson
459c9a5210
Wait for a login attempt to run its course
...
If an existing session was not quite logged in, but
may be getting there, join in and wait for result
instead of starting over again.
2022-05-12 16:39:58 -04:00
Jarrod Johnson
c328fea49a
Cleaner output on cli
...
Based on feedback, remove the added 'inlet_' from pdu
output.
Also, fix geist plugin to block unsupported
features for now.
2022-05-11 16:01:43 -04:00
Jarrod Johnson
caba650143
Add nodepower arguments for PDU operations
2022-05-11 14:59:54 -04:00
Jarrod Johnson
e4d7be649a
Fix single inlet operations
2022-05-11 13:31:19 -04:00
Jarrod Johnson
d8a0f111db
Implement changing PDU state on set
2022-05-11 08:53:24 -04:00
Jarrod Johnson
8dbcc804ed
Pull outlets into the generic hierarchy
...
This will more easily facilitate adding pdus without dependent nodes.
2022-05-10 16:05:37 -04:00
Jarrod Johnson
6229cb23e8
Begin PDU implementation
2022-05-10 16:00:08 -04:00
Jarrod Johnson
0e879dc3de
Add el7 to alternat squashfs name
2022-05-09 09:57:59 -04:00
Jarrod Johnson
ee1a763c68
Add el7 to alternat squashfs name
2022-05-09 09:57:35 -04:00
Jarrod Johnson
f138b4513c
Merge branch 'master' into remote_discovery
2022-05-09 08:33:24 -04:00
Jarrod Johnson
2925c291cf
Increase ipmi concurrency
...
128 can be a bit limiting, try 512 for improved responsiveness
2022-05-05 09:28:09 -04:00
Jarrod Johnson
86891eb2e5
Rework resolv watcher
...
Handle symlinks better and do not trigger overly
eagerly
2022-05-05 09:26:55 -04:00
Jarrod Johnson
754cdfdd78
Fix rpm spec syntax for imgutil
2022-05-04 14:35:03 -04:00
Jarrod Johnson
ffadb9cc3a
Add squashfs dependency
...
It has been confusing when imgutil cannot pack by default
2022-05-04 14:23:41 -04:00
Jarrod Johnson
d3129847b4
Add recognition of Alma 9 and (presumably) rocky 9
2022-05-04 14:16:51 -04:00
Jarrod Johnson
548111f4d1
Fix executable status of the confluent casper hook
2022-05-04 12:11:24 -04:00
Jarrod Johnson
62b27b1fcc
Back off diskless profile for ubuntu 22.04, not yet done
2022-05-04 11:42:14 -04:00
Jarrod Johnson
bf37c05d71
Add ubuntu 22.04 to packaging
2022-05-04 11:31:03 -04:00
Jarrod Johnson
e2e4014db3
Make ubuntu case insensitive on import
...
Ubuntu changes their minds about case of some files.
2022-05-04 11:01:59 -04:00
Jarrod Johnson
b2feb62d8a
Add ubuntu22.04 profile
...
Ubuntu 22.04 makes some changes, notably removing the
custom-installation hooks.
Change to injecting our modifications more directly to where the
custom-installation hooks used to be.
2022-05-04 09:25:49 -04:00
Jarrod Johnson
0301f5ca68
Fix imgutil pack expecting addpackagelist
...
The attribute only populates on a different subcommand,
so only process if the attribute exists.
2022-05-04 06:44:07 -04:00
Jarrod Johnson
98d22ffabc
Add a utility to induce an inventory
2022-05-03 08:29:43 -04:00
Jarrod Johnson
ac762c7ad5
Note addition of enclosure uuid to nodediscover
...
This will help sort out dense invorenments more easily, particularly
if no switch or chained.
2022-05-02 17:04:13 -04:00
Jarrod Johnson
48fd496637
Fix discovery uuid cross-reference
...
The SSDP does an endian scramble of the smm uuid,
fix it, and also update the core to prefer the
processed enclosure.uuid attribute.
2022-04-27 15:09:40 -04:00
Jarrod Johnson
a738be3b53
Add license file to imgutil packaging
2022-04-26 08:18:31 -04:00
Jarrod Johnson
7da8a2ec4c
Properly stage the license file for osdeploy
2022-04-26 08:16:12 -04:00
Jarrod Johnson
e842c2ddc8
Add licensing to osdeploy package
2022-04-26 08:09:50 -04:00
Jarrod Johnson
46ffe3f5f2
Fix license directory name for confluent server
2022-04-26 08:00:13 -04:00
Jarrod Johnson
060f639ab3
Flag license files appropriately
2022-04-25 17:02:35 -04:00
Jarrod Johnson
69b3aca815
Remove errant copy of LICENSE file in client
2022-04-25 16:54:06 -04:00
Jarrod Johnson
9333c999c9
Adjust setup.py licensing for older setuptools
2022-04-25 16:48:31 -04:00
Jarrod Johnson
5538f99376
Support older setuptools for license packaging
2022-04-25 16:47:19 -04:00
Jarrod Johnson
6270d57729
Add tmt license terms to vtbufferd package
2022-04-25 16:31:51 -04:00
Jarrod Johnson
66f2ba98ec
Set up confluent licensisng in setupdist context
2022-04-25 16:15:49 -04:00
Jarrod Johnson
7234310519
Move licensing to files instead of rpm description for vtbuffer
2022-04-25 16:05:22 -04:00
Jarrod Johnson
2c058fe634
Properly mark license files as license
2022-04-25 15:46:29 -04:00
Jarrod Johnson
f009f6b8c2
Trim to appropriate content for the license
2022-04-25 15:18:27 -04:00
Jarrod Johnson
061d4217ff
Further amend license handling
2022-04-25 14:46:50 -04:00
Jarrod Johnson
5d03eb8863
Try to normalize license paths
2022-04-25 14:15:07 -04:00
Jarrod Johnson
4d218757f3
Amend license carry over logic
2022-04-25 14:02:08 -04:00
Jarrod Johnson
71a698f771
Carry over license content from donor rpms
2022-04-25 13:52:36 -04:00
Jarrod Johnson
2f8846ee75
Further change directory traversal
2022-04-25 13:14:02 -04:00
Jarrod Johnson
128cb61eaa
Fix directory traversal
2022-04-25 13:12:04 -04:00
Jarrod Johnson
d8a2671dd6
Fix directory traversal
2022-04-25 13:11:43 -04:00
Jarrod Johnson
8947ab08da
Add file to show the rpm versions at build time of genesis
2022-04-25 13:05:16 -04:00
Jarrod Johnson
14efec3603
Add file to show the rpm versions at build time of genesis
2022-04-25 13:04:45 -04:00
Jarrod Johnson
00589d06f5
Refactor relay and add to XCC/SMM
...
Extract relay versus direct determination and
inject into XCC and SMM handlers
2022-04-21 09:40:09 -04:00
Jarrod Johnson
334ce65919
Add facility for forwarding agent
...
Remote discovery will require that the reporting agent
provides port forwarding facility for https access, to
allow access without route to the managing confluent server.
This will allow the info reported to indicate use of this
forwarding facility and the base handler adds ability to
generically get the certificate.
2022-04-20 17:11:01 -04:00
Jarrod Johnson
f6a16a89f2
Prevent spaces in nodenames
2022-04-20 08:55:54 -04:00
Jarrod Johnson
3297667ef8
Prune out backspaces
...
Some utilities backspace prior to printing anything,
prevent such applications from encroaching on the node name space.
2022-04-19 09:13:18 -04:00
Jarrod Johnson
f4eec09a41
ADd a sample for converting mac to lla
2022-04-18 10:42:35 -04:00
Jarrod Johnson
f15802a9aa
Fix capture of non-selinux systems
2022-04-18 09:15:09 -04:00
Jarrod Johnson
449b2662fa
Provide addpkglist support for imgutil build
...
This allows packagelists to be supplied to addon to the basic list, without
having to duplicate and modify
2022-04-14 14:35:26 -04:00
Jarrod Johnson
fb9546cbd6
Kill redundant udevd prior to starting the root fs
...
Having multiple udevd produces ambiguity and confusing
2022-04-14 13:56:42 -04:00
Jarrod Johnson
193d37029f
Relabel target path if selinux disabled on build host
2022-04-14 12:47:14 -04:00
Jarrod Johnson
5285691344
Correct fix for the python3 compatibility
2022-04-13 17:32:43 -04:00
Jarrod Johnson
c533c973b1
Fix python3 compatibility with termhandler
2022-04-13 17:00:27 -04:00
Jarrod Johnson
212aa5c6e2
Add ability to unsubscribe from a terminal session
2022-04-13 16:44:01 -04:00
Jarrod Johnson
2bf9a6d415
Add support for consolidated term websocket
...
Since browsers can be stingy with websockets, have
the consoles all share a single websocket.
2022-04-13 16:08:13 -04:00
Jarrod Johnson
272398884c
Appl consistent name to apiclient for EL8
2022-04-13 11:27:30 -04:00
Jarrod Johnson
79bc27bc7a
Have el8 diskless systems add local repositories
...
This sets up local yum action by default.
2022-04-13 09:50:39 -04:00
Jarrod Johnson
8c54b6eaf8
Fix path to apiclient in add_local_repositories
2022-04-13 09:48:33 -04:00
Jarrod Johnson
1e77448b3a
Fix comment support in pkglist for imgutil
2022-04-12 09:57:06 -04:00
Jarrod Johnson
918658c2ac
Cleanup loop device allocation on image unpack
...
loop device was left configured after an unpack
2022-04-11 16:06:08 -04:00
Jarrod Johnson
dfc9b0901d
Improve feedback on no match found for log search
2022-04-08 12:59:36 -04:00
Jarrod Johnson
4b988e0633
Integrate logreader into nodeconsole as a feature
2022-04-08 12:29:45 -04:00
Jarrod Johnson
1ef0a61ed1
Move logreader to be a library in client
2022-04-08 12:12:02 -04:00
Jarrod Johnson
b42a4bd722
Pretty-ify search interaction
...
Have the search text and feedback at bottom of screen.
2022-04-08 12:09:40 -04:00
Jarrod Johnson
198d8b3e47
Add flag to disable expression expansion
...
Some scenarios that do not use the {} feature may
find it difficult to pre-format. Allow
such cases to opt out.
2022-04-08 10:28:11 -04:00
Jarrod Johnson
fc64d2d93f
Add a SLES variant to profiles for SUSE
2022-04-07 14:18:10 -04:00
Jarrod Johnson
4b8be913ee
Logreader enhancements
...
Highlight all visible matches on screen
Restore cursor visibility if trashed.
Backspace in search string works.
2022-04-06 15:28:48 -04:00
Jarrod Johnson
eba668b96c
First pass at a search function
...
Currently, the 'n' for next result fails to find the next result
if it is currently on screen. Also, the feedback on
failed search could use improvement.
2022-04-06 14:19:28 -04:00
Jarrod Johnson
ded3cc4467
Fix logreader for python2/3 compatibility
2022-04-06 09:32:03 -04:00
Jarrod Johnson
7a0dee8af8
Fix keepalive/logout behavior in ws async
...
Use the websocket liveness as the keepalive, so
the reaper is not scheduled for such sockets.
Additionally, register the async thread as to be killed on logout.
2022-04-05 16:56:36 -04:00
Jarrod Johnson
105536656e
Implement async session on websocket
...
This eliminates long polling and sets the stage to restore
socket sharing by terminals and shells.
2022-04-05 16:33:03 -04:00
Jarrod Johnson
8ef91c16c0
Do not let an existing /var/lib/confluent block the requisite chown
2022-04-05 09:35:05 -04:00
Jarrod Johnson
6fab77264c
Make paginate to handle multiple screen clear
...
Grub moves cursor and clears as two separate commands,
so recognize that sequence as clear screen as well
2022-04-02 07:33:50 -04:00
Jarrod Johnson
ab7f0e0528
Fix error checking in imginfo
...
imginfo was checking fread when it should
have been checking number of records.
2022-04-01 09:32:43 -04:00
Jarrod Johnson
777bdfac5c
Fix the incorrect parameter name in setting password policy
...
The mistake was keeping the requisite rule from applying
2022-03-30 11:16:33 -04:00
Jarrod Johnson
d651c29149
Add password expiration recovery to smm discovery
...
SMM discover can now also unexpire password during onboarding.
2022-03-30 08:50:08 -04:00
Jarrod Johnson
b4f021cfad
Fix omission in SSDP snoop
2022-03-30 08:24:25 -04:00
Jarrod Johnson
69a06a6923
Implement a password unexpiration mechanism in xcc
...
If the node has expired password, do what is necessary to unexpire the
password
to get through assignment.
2022-03-30 08:07:25 -04:00
Jarrod Johnson
d214e7e442
Normalize blank strings in cfgdata
...
In cfgdata, make '' replaced by None for
consistent behavior for cleared and blanked
attributes.
2022-03-25 08:59:46 -04:00
Jarrod Johnson
e4e15d87a7
Background redfish check on snoop
...
When snooping, if a redfish device comes along, background the
query so that it is unable to block the main SSDP receive routine.
2022-03-24 17:18:05 -04:00
Jarrod Johnson
21bfc29a89
Make more clear the default behavior when prompting
2022-03-24 11:18:37 -04:00
Jarrod Johnson
7a66567625
Add missing monotic dependency
2022-03-24 09:20:14 -04:00
Jarrod Johnson
b830a317f6
Change suse from team to bonding
...
Suse more naturally supports team, and the industry push to team
has evaporated
2022-03-24 09:10:42 -04:00
Jarrod Johnson
4e4fe03b62
Properly honor explicit interface_names
...
A mistake resulted in plural interface_names being treated as singular.
2022-03-24 07:44:13 -04:00
Jarrod Johnson
08264f277b
Fix location of apiclient in suse
2022-03-23 15:46:37 -04:00
Jarrod Johnson
ac1ba5cbc5
Correct mistakes in the first pass of routed deployment
2022-03-18 16:04:29 -04:00
Jarrod Johnson
acd8cb9055
First pass at media based routed deployment
2022-03-18 15:39:22 -04:00
Jarrod Johnson
8a3688c1d6
Fix mistake in pre.sh for relocation of apiclient
2022-03-18 12:09:43 -04:00
Jarrod Johnson
cd3d248a78
Add identimage to rpm build
2022-03-17 13:04:24 -04:00
Jarrod Johnson
2299ccc32f
Handle VROC devices in autoyast
...
At time of running pre, array is not assembled by default,
inject a scan to check for them.
VROC must not be specified by 'md' name, or yast thinks it
needs to own making it, and complains that the setup doesn't
specify members.
2022-03-17 12:19:42 -04:00
Jarrod Johnson
bfd40b51de
Correct name of ident_image api
2022-03-17 09:35:49 -04:00
Jarrod Johnson
94ab644f5c
Create mechanism to create node identity images
...
These images are used in the flow of routed deployment.
2022-03-16 15:41:07 -04:00
Jarrod Johnson
40a187d2aa
Reverse ordering of reboot and api arming.
...
Technically there's room for a race condition where boot is attempted
before the profile is ready, but it's highly unlikely.
Conversely, there is a potential confusing race condition today where
restarting a deploymennt without armed api causes
it to be disarmed before the boot is attempted.
2022-03-16 14:57:46 -04:00
Jarrod Johnson
fdd3ec4233
Fix check for confluent service having started
...
Give confluent full chance to set things up prior
to proceeding.
2022-03-16 10:28:44 -04:00
Jarrod Johnson
b2603aa1f8
Set ownership of /var/lib/confluent on installation
...
Some paths fail to initialize ownership earlier, give it
a head start
2022-03-16 10:26:16 -04:00
Jarrod Johnson
b6034f2e71
Update to fix new profiles and accomodate old profiles
...
/etc/confluent/apiclient is expected by older profiles
2022-03-16 09:40:55 -04:00
Jarrod Johnson
fe40d7c15e
Fix mispelling of confluent
2022-03-16 09:01:22 -04:00
Jarrod Johnson
32081edec8
Workaround ':' format specifier syntax
...
Older python will break by assuming that
: always means a format expression is coming.
Move the field value fetch to format_field, and ascertain if some of the
expression was shunted to format specification
by mistake.
2022-03-11 12:21:09 -05:00
Jarrod Johnson
dc0183fdf4
Add [] slicing/indexing to confluent attribute expression syntax
...
This permits expressions like:
node[:-3]
To say nodename, but leave out 3 chars.
Or:
node[3:]
To skip the first three characters.
2022-03-11 11:23:43 -05:00
Jarrod Johnson
f168c4be2b
Allow free ordering of noderange/arguments in nodeping
...
With nodeping, no concern about passing arguments to arbitrary subcommand, so
allow arguments to be anywhere.
2022-03-11 10:55:00 -05:00
Jarrod Johnson
2194ca9018
Create a nodeping script for quick ping wrapping
2022-03-11 10:23:11 -05:00
Jarrod Johnson
ceada3b7d9
Provide API for using one-time shared secret to register api key
...
This permits long haul node api key registration over a single port. It cannot validate that
the requester is privileged, but the auto-invalidation
offsets the risk of subsequent users having read access to the remote mount.
2022-03-10 16:06:02 -05:00
Jarrod Johnson
ad40c46509
Remove now-redundant genpasshmac.c file
2022-03-10 09:32:44 -05:00
Jarrod Johnson
301ed7a798
Fix mistake in b64e invocation
2022-03-10 09:15:26 -05:00
Jarrod Johnson
b42e2e4932
Change to b64 output for hmac
...
base64 utility is not always available, so natively
use base64 format for hmac output.
2022-03-10 09:00:54 -05:00
Jarrod Johnson
61d037ae31
Combine genpasshmac with clortho
...
This permits saving on addons size by using the same
binary for both networked api grant and hmac api
grant.
2022-03-09 13:36:47 -05:00
Jarrod Johnson
6a30afa31e
Have SSDP ignore multicast disabled interfaces
2022-03-09 11:01:01 -05:00
Jarrod Johnson
625434fcaf
Fix mistake in deploycfg parsing
...
More strictly match the field name.
2022-03-08 16:29:49 -05:00
Jarrod Johnson
a8c2f859e4
Add a genpasshmac utility
...
For far edge deployment, create utility
that can hmac a password for use in a REST
api call to skip need for tcp port 13001 access.
2022-03-08 16:27:37 -05:00
Jarrod Johnson
31dad09b0c
Update makefile to build in sh256 to clortho
2022-03-08 14:46:33 -05:00
Jarrod Johnson
0abe978bd9
Implement hmac of apikey
...
For routed deployment, we have to preshare some information.
Additionally, the API arm mechanism gets too open ended.
Add support for using a shared secret over another
channel to do HMAC of a key to authenticate peer,
which has an alternate api arming mechanism
that is hardened.
2022-03-08 14:46:00 -05:00
Jarrod Johnson
e67bab4f12
Place cap on api password length
...
No more than 48 characters should ever be in
an api token. Cap it to avoid outrageous crypt
behavior at large password length.
2022-03-08 09:15:13 -05:00
Jarrod Johnson
21c0372a5b
Support get_full_net_config without serverip
...
When trying to get a configuration
without a network context, it would fail.
Now, as intended, it generates network configuration without autosense in such a case.
2022-03-07 15:28:04 -05:00
Jarrod Johnson
98d8aaffe8
Merge branch '3.4'
2022-03-07 15:22:54 -05:00
Jarrod Johnson
ecd114ca5a
Add script for setting up ssh
...
A frequent scenario is to 'refresh' ssh configuration toward the
end of:
-changing trust nodes
-Adding a collective member
-Repairing a broken configuration
-As part of 'confluent-ifying' a node that wasn't confluent deployed
2022-03-03 12:34:37 -05:00
Jarrod Johnson
5fb766e62b
Move apiclient consistently to /opt/confluent/bin
...
It's more reasonable to have
it in a bin directory
2022-03-03 11:11:29 -05:00
Jarrod Johnson
76fdf59122
Change genesis functions location
...
Put it in a place consistent with more normal use.
2022-03-03 08:34:57 -05:00
Jarrod Johnson
003196bc9e
Allow -o with data file
...
This makes things like ssh key signing easier.
2022-03-03 08:25:04 -05:00
Jarrod Johnson
15e7e4464e
Keep known_hosts cleaner
...
When repeating osdeploy initialize
of local known_hosts, more
gracefeully avoid duplicate entries.
2022-03-02 16:04:01 -05:00
Jarrod Johnson
687136131e
Place Confluent CA certs into TLS anchors
...
When processes may update the certificate authorities, the confluent
CA trust would be lost. Place it appropriately so that
update-ca-trust will keep it in the appropriate place.
2022-03-02 08:41:47 -05:00
Jarrod Johnson
5f610b64b7
Place Confluent CA certs into TLS anchors
...
When processes may update the certificate authorities, the confluent
CA trust would be lost. Place it appropriately so that
update-ca-trust will keep it in the appropriate place.
2022-03-02 08:40:27 -05:00
Jarrod Johnson
6f194f26c0
Fix contents and permissions
...
NetworkManager demands specific
permissions
2022-02-25 16:18:54 -05:00
Jarrod Johnson
71c60be659
Fix el8 dns configuration
...
The modification to add dns search must only be suggested
if the respective ip version section is enabled.
2022-02-25 15:22:45 -05:00
Jarrod Johnson
58a9aa03ef
Add DNS domain to el8 network manager
2022-02-25 09:48:56 -05:00
Jarrod Johnson
19a370b0f5
Add explicit client version dependency
2022-02-25 07:31:12 -05:00
Jarrod Johnson
47a517aec1
Decrease retries to do https retries with bad TLS cert
2022-02-24 16:37:48 -05:00
Jarrod Johnson
1f7bd1a28a
Fix autoconsole output on diskless
2022-02-24 16:27:32 -05:00
Jarrod Johnson
89cc49c4fc
Add loginname to nodeshell man page
2022-02-24 16:08:50 -05:00
Jarrod Johnson
50da83b4f5
Fix api token message not being pushed
2022-02-24 15:56:29 -05:00
Jarrod Johnson
15f4cc085d
Aggressively flush out error output
2022-02-24 15:46:38 -05:00
Jarrod Johnson
d7df1e7891
Prevent users from dupe group memberships
2022-02-24 15:06:41 -05:00
Jarrod Johnson
1a5f5aea3a
Try an alternative approach to autoconsole errors
2022-02-24 12:18:41 -05:00
Jarrod Johnson
7068287ba3
Fix autocons spurious output
2022-02-24 10:25:59 -05:00
Jarrod Johnson
fb1f6b70bb
Improve error handling on bad TLS cert
...
Bad TLS cert is a common problem, provide better feedback.
2022-02-24 09:27:40 -05:00
Jarrod Johnson
2c9be7a4c4
Remove slp snoop of XCC
...
SSDP snoop catches XCC, and do only
SSDP for consistent format of
snoop info coming into the
xcc handler.
2022-02-24 08:08:50 -05:00
Jarrod Johnson
24ef12e029
Disable autoconf of ipv6 in el
...
If autoconf is allowed when link is brought up, it scan
confuse redhat network configuration when it already finds
an ipv6 address.
2022-02-23 16:58:29 -05:00
Jarrod Johnson
e390618dd9
Fix handling without olduuid in database
2022-02-23 10:13:06 -05:00
Jarrod Johnson
8f4846c248
Fix for partial returns
...
full_net_config may not always apply,
be sure to gracefully degrade.
2022-02-22 17:08:23 -05:00
Jarrod Johnson
ac8918c2b9
Add ips to ssh principals
...
For any static address, also grant
certificate for that.
2022-02-22 16:48:58 -05:00
Jarrod Johnson
fdc9d94408
Also register to run before coreos-ignition-setup-user
...
For coreos, make sure we preempt either name.
2022-02-22 14:30:48 -05:00
Jarrod Johnson
3cf9edeeb8
Stub out buffering for shell sessions
...
This is not yet handled anyway.
For future, establish norm of a nodeid
to prefix multiple distinct sessions.
2022-02-22 08:49:31 -05:00
Jarrod Johnson
8fab8238ed
Disambiguate console from shell buffer
...
There is room for the console replay to get confused,
fix by fully qualifying the console name.
2022-02-18 17:31:13 -05:00
Jarrod Johnson
80293efe57
Address coverity false-positives
...
Technically, the fread won't reach the
length index, but change the order
anyway to reassure coverity.
2022-02-17 17:09:21 -05:00
Jarrod Johnson
b463a53146
Cleanup per coverity
...
Fix a number of concerns that coverity reports
2022-02-17 17:05:00 -05:00
Jarrod Johnson
58b55b6ef6
Error on trying to double-add nodes or groups
...
Prevent user from repeatedly adding the
same group to a node or same node to a group.
2022-02-16 11:58:22 -05:00
Jarrod Johnson
33be75a9a2
Markup bandit exceptions
...
Apply bandit exceptions and explain
the rationale in each case
2022-02-16 09:10:33 -05:00
Jarrod Johnson
f10a27fd7a
Switch to mkstemp
...
Use mkstemp to more confidently reserve a filename as expected.
2022-02-15 17:13:04 -05:00
Jarrod Johnson
3f53cb939a
Add mkdir -p to build script for genesis
2022-02-15 10:32:39 -05:00
Jarrod Johnson
961398e34e
Bump version to cover 8.6 update
2022-02-15 10:29:18 -05:00
Jarrod Johnson
13b3b081cf
Update to new rdma version in el8.6
2022-02-15 10:28:19 -05:00
Jarrod Johnson
3e6b67f9a7
Error if user omits attributes for options
...
If user indicates manipulation of
attributes through -c, -p, or -e,
but none are specified, print an error
instead.
2022-02-14 09:24:15 -05:00
Jarrod Johnson
93a5496899
Reject reverse range noderange
...
It has been stated that no one would want to do this
on purpose, and thus it should reject. The rationale
being that if no one wants to do this, but did it
anyway, they presumably made a mistake.
So now such attempts will be blocked.
Keep the dead logic around for now
in case a future opinion changes things back.
2022-02-11 15:20:41 -05:00
Jarrod Johnson
bd428790ce
Try for more informative messoge an expression syntax error
2022-02-11 14:51:53 -05:00
Jarrod Johnson
f0c4943612
Merge branch 'master' of github.com:lenovo/confluent
2022-02-11 14:33:47 -05:00
Jarrod Johnson
f547071d38
Warn user of unworkable syntax
...
When used in {} expressions, attributes must obey python syntax rules,
try out the attribute name and report the issue when it would be a problem.
2022-02-11 14:32:52 -05:00
Jarrod Johnson
fbd3a442ac
Support numeric owner/group in syncfile list
2022-02-08 17:38:01 -05:00
Jarrod Johnson
b809514ef9
Fix osdeploy initialize dependency on master key
...
Make sure confluent has made /etc/confluent, and further always initialize the
encryption key, as it will almost certainly
be needed and easiest to just always
generate on first startup.
2022-02-08 16:40:41 -05:00
Jarrod Johnson
b1032d8c4c
Specify write mode for confluent_uuid file
2022-02-08 12:31:04 -05:00
Jarrod Johnson
00bedf6946
Shuffle confluenntuuid to earlier in copernicus
...
Currently, ssdp handler behavior needs confluentuuid first, if
it is to have any effect.
2022-02-08 12:06:52 -05:00
Jarrod Johnson
e7b1791df3
Modify input in bandit-friendly way
...
bandit erroneously flags 'input' based
on possible python2-ism. Avoid the
error by using 'getinput', making that
input or raw_input based on the python version.
2022-02-08 10:59:15 -05:00
Jarrod Johnson
6e03f6ee0a
Correct syntax typo
2022-02-08 10:49:42 -05:00
Jarrod Johnson
358b719cec
Implement deployment binding for new installs
...
When doing osdeploy initialize,
save the uuid and have deployment
targets specifically pair back with site via
uuid.
2022-02-08 10:41:27 -05:00
Jarrod Johnson
b0b8ee128b
Correct imgutil typo
2022-02-08 09:35:10 -05:00
Jarrod Johnson
094c97696f
Merge tag '3.3.5'
...
Fixes for esxi7 and el7
2022-02-07 13:07:36 -05:00
Jarrod Johnson
c2b66958d7
Update imgutil to not need rpm-python
...
EL7 does not have rpm for python3, use the cli instead for
such a case.
2022-02-07 12:23:44 -05:00
Jarrod Johnson
4a38a88136
Add recognition of RHEL9 media
2022-02-07 09:20:05 -05:00
Jarrod Johnson
b1cbca414a
Fix compatibility with CentOS7 for imgutil build -s
2022-02-07 08:39:45 -05:00
Jarrod Johnson
522d7e2b59
Fix configmanager issue witht more recent python3
2022-02-04 16:21:39 -05:00
Jarrod Johnson
7c169f635a
Actually correct deb builder for vtbufferd
2022-02-04 16:06:12 -05:00
Jarrod Johnson
82f85b8aef
Fix deb build of vtbuffered
2022-02-04 16:04:27 -05:00
Jarrod Johnson
97476f51da
Remove some el7-irrelevant ramfs content
2022-02-03 12:26:09 -05:00
Jarrod Johnson
6769c171c1
Fix confignet for python2
2022-02-03 11:58:44 -05:00
Jarrod Johnson
638a1b3587
Fix confignet for python2
2022-02-03 11:50:34 -05:00
Jarrod Johnson
5f4a565feb
Use python2-compatible apiclient load for el7 diskless
2022-02-03 10:10:23 -05:00
Jarrod Johnson
700fe1bc3b
Fix for EL7 compatibility
...
Some python 3 exclusive assumptions were made.
Unfortunately, EL7 is python2
centric.
2022-02-03 10:10:10 -05:00
Jarrod Johnson
e94d0a5236
Fix for EL7 compatibility
...
Some python 3 exclusive assumptions were made.
Unfortunately, EL7 is python2
centric.
2022-02-03 10:09:28 -05:00
Jarrod Johnson
4665fb96a2
Fix relative hostpath for mismatched build platform
...
Relative path was erroneously
resulting in the host system
being consulted rather than the target.
2022-02-03 09:07:02 -05:00
Jarrod Johnson
33761e8870
Exlicitly add AES and DRBG for EL7
2022-02-02 16:54:41 -05:00
Jarrod Johnson
0bca6e0852
Apply more fixes for EL7 diskless
2022-02-02 15:22:58 -05:00
Jarrod Johnson
c6816099f7
Add el7 diskless draft to packaging
2022-02-02 13:23:34 -05:00
Jarrod Johnson
71bcdc2e4e
Continuation of work on draft el7 diskless
2022-02-02 13:11:38 -05:00
Jarrod Johnson
eaa0921420
Draft EL7 diskless support
2022-02-02 13:09:26 -05:00
Jarrod Johnson
554e25d6cb
Assume libcrypt.so.1 if not 2 in more generic way
2022-02-02 11:17:08 -05:00
Jarrod Johnson
bc7d480a17
Use more widely known paths for libcrypt
2022-02-02 11:03:44 -05:00
Jarrod Johnson
92dea32dd4
Change to python 2/3 agnostic syntax
2022-02-02 11:03:12 -05:00
Jarrod Johnson
f346cae683
Use more widely known paths for libcrypt
2022-02-02 10:53:46 -05:00
Jarrod Johnson
1431f9ce13
Change to python 2/3 agnostic syntax
2022-02-02 08:37:22 -05:00
Jarrod Johnson
485c323608
Stage uploads in memory
...
The strategy of duping file descriptors
is inadequate. The copies share
identical offsets.
Fix this by reading the file once into
memory, and using BytesIO to fake a file.
This is relatively memory intensive in theory, but in practice
pyghmi library had been duping everything to memory
anyway, so it is a wash for now.
2022-01-27 17:29:17 -05:00
Jarrod Johnson
2bc080f4e0
Improve noderun message when command not found
...
Rather than raise an ominous looking trace, simply
state that thte command was not found and continue.
2022-01-26 11:35:43 -05:00
Jarrod Johnson
effaba9661
Fix adding nodes with uuid for pxe
...
When adding nodes, they wouldn't be tracked for PXE
until id.uuid changed, or service restarted.
Fix by explicitly remapping all added and new names.
2022-01-26 08:35:10 -05:00
Jarrod Johnson
fd00a70075
Merge branch 'master' of github.com:lenovo/confluent
2022-01-25 11:21:16 -05:00
Jarrod Johnson
daa6b8208c
Handle update being cancelled server side
...
The result may not be a nicely formed result, handle less
formed results.
2022-01-25 11:09:49 -05:00
Jarrod Johnson
9f071c1fdb
Provide more details in example syncfiles
2022-01-20 14:10:30 -05:00
Jarrod Johnson
3f90c35bc9
Raise error on missing piece of syncfiles entry
2022-01-20 13:13:04 -05:00
Jarrod Johnson
456b43eeb7
Correctly align rtattr and nlmsg
...
When advancing through messages,
must pad to nearest multiple of
4. This resolves erroneously landing on incorrect offsets.
2022-01-19 13:21:59 -05:00
Jarrod Johnson
2d13921d54
Amend deployment initialize for consistent ownership
...
Depending on the options selected/not selected, the
/var/lib/confluent directory may have been initialized
incorrectly. Have all the potential paths begin with
ensuring /var/lib/confluent is correct, and then
use seteuid consistently to take care of the rest.
2022-01-14 15:08:19 -05:00
Jarrod Johnson
8b95e8f507
Improve osdeploy import error handling
...
Before, conditions that were unexpected
would result in hangs. Now
transition to and report error state.
2022-01-14 09:23:54 -05:00
Jarrod Johnson
fdc3d1c457
Broaden scope of logging issues with connecting to a leader.
...
Notably, certificate mismatch should be caught.
2022-01-14 07:39:25 -05:00
Jarrod Johnson
8d5d8ef5ed
Have later syncfiles entries supersede earlier
...
This allows a vague entry to
be followed by a specific
entry to allow 'common' content
and then a specific override.
2022-01-13 16:52:10 -05:00
Jarrod Johnson
aa816c0f1d
Have attribute update support wildcards
...
This makes nodeattrib behave more like nodeconfig.
2022-01-13 13:27:07 -05:00
Jarrod Johnson
b7a786dc83
Choose more accurate description of ambiguous switch situation
...
Technically, it need not be an aggregation, but link between switches generically covers it.
2022-01-12 09:31:44 -05:00
Jarrod Johnson
f46fc9f7de
Provide error about in-use dhcp
...
The events will more clearly indicate
when dnsmasq is not adequately configured.
2022-01-12 09:27:49 -05:00
Jarrod Johnson
2d95fb1d74
Improve 'ambiguous' notification in macmap.
...
When two nodes are ambiguous, provide more
info (mac) and also a suggestion of
which of the two appears most
trunk-like if one of them looks
suspiciously like a trunk.
2022-01-12 08:31:13 -05:00
Jarrod Johnson
04b462712d
Tolerate redfish variations and fix loop
...
Some redfish omit the trailing /, and the correct move on non-redfish
is to continue to next candidate,
not break.
2022-01-11 16:53:46 -05:00
Jarrod Johnson
9c40569429
Add el9 to spec files
2022-01-11 16:02:47 -05:00
Jarrod Johnson
89187ef97d
Merge branch '3.3'
2022-01-11 09:57:27 -05:00
Jarrod Johnson
0186f002e0
Have configbmc stall on TSM
...
TSM will stall out for an extended
period of time after a network change.
Accomodate by forcing a pause
on detection of TSM.
2022-01-10 12:02:46 -05:00
Jarrod Johnson
8d80efec64
Correct configbmc misidentification of lan chan
...
The lan channel get mac address was incorrect, change
to correctly request.
2022-01-10 12:02:14 -05:00
Jarrod Johnson
dbaae417e9
Have configbmc stall on TSM
...
TSM will stall out for an extended
period of time after a network change.
Accomodate by forcing a pause
on detection of TSM.
2022-01-10 12:01:15 -05:00
Jarrod Johnson
181f704331
Correct configbmc misidentification of lan chan
...
The lan channel get mac address was incorrect, change
to correctly request.
2022-01-10 09:29:40 -05:00
Jarrod Johnson
6df73d88b3
If SSDP happens but HTTPS not ready, ignore
2022-01-07 10:45:10 -05:00
Jarrod Johnson
d5a8e881ab
Defer handler processing
...
This was done in slp, do it also for ssdp. This
hopefully does it's best to flush udp buffer more
quickly in at scale scenarios.
2022-01-07 09:55:49 -05:00
Jarrod Johnson
c475e4801f
Fix incorrect quotes in autocons.c
2022-01-07 09:28:24 -05:00
Jarrod Johnson
e54277f8f8
Fix ssdp snoop of XCC
...
SSDP was declaring victory too early, wait until
the right volume of information is confirmed available
before commiting to shared structures.
2022-01-07 09:00:44 -05:00
Jarrod Johnson
d18d7592d3
Suppress extraneous slp trace errors
...
If a half-behaving peer appears, suppress the error and permit a retry later.
2022-01-07 07:17:27 -05:00
Jarrod Johnson
60398bf8f7
Add passive detection of XCC via SSDP
...
Take ssdp alive packets to pick up
XCCs outside of active scans.
2022-01-06 16:48:39 -05:00
Jarrod Johnson
22024b23b8
Prefer shortname for collective
...
When a colleective begins, default
to using the shortname, even
if gethostname returns a long one.
2022-01-06 12:38:15 -05:00
Jarrod Johnson
8da513b152
Fix TSM to lower case uuid for discovery
...
TSM were inconsistent by presenting
all caps UUID sometimes.
2022-01-05 12:50:31 -05:00
Jarrod Johnson
6f272b9d50
Skip generic redfish check
...
For now, it won't do anything but waste
resources.
2022-01-05 12:35:42 -05:00
Jarrod Johnson
b3c0810574
Fix XCC preconfig with SSDP change
...
The SSDP unfortunately changes
some structure, change XCC
preconfig to expect the SSDP structure.
2022-01-05 12:10:34 -05:00
Jarrod Johnson
b90756d2a6
Move XCC detection to SSDP
...
XCC will be retiring SLP and to prepare
for that, move over to SSDP.
This required that the snoop be wired
up to detection correctly, that slp
no longer report XCC, that
the model/serial number be moved to xcc handler, and various fixes to SSDP.
2022-01-05 11:43:04 -05:00
Jarrod Johnson
978b52dbb6
Fix selection of suboptimal alias
...
When picking deploy server, stop on a close match if net.ipv4_address suggests
a same-subnet match rather than adding the last alias.
2021-12-28 09:47:47 -05:00
Jarrod Johnson
d47b088753
Fix mistake in error output
2021-12-22 23:29:21 -05:00
Jarrod Johnson
47a83f4628
Do not trace out if a packet can't be replied to
2021-12-20 12:37:18 -05:00
Jarrod Johnson
abec8c498c
Break netlink address fetch on invalid rta_len
...
It is considered valid for kernel to return a null rta_len
in the midst of data and expect the caller to terminate.
2021-12-20 12:28:35 -05:00
Jarrod Johnson
a8132d87a7
Blacklist the tianocore default uuid
...
If a platform doesn't have a uuid, Tiano hardbakes
yet another invalid uuid to ignore.
2021-12-17 09:13:49 -05:00
Jarrod Johnson
65d6ff13fa
Ignore and warn on bad gateway
...
If user specifies a bad gateway,
spare the firmware from seeing
it and log that the gateway is a problem.
2021-12-17 08:44:46 -05:00
Jarrod Johnson
9b178c0653
Provide nicer error message on existing name
...
Packing ontop of an existing profile is not presently supported,
provide a clearer indication of this.
2021-12-15 13:26:32 -05:00
Jarrod Johnson
016ee3ecb0
Fall back if timedatectl doesn't work
2021-12-15 12:34:28 -05:00
Jarrod Johnson
48ea6225aa
Remove stderr from subprocess error
...
it is not a supported keyword
2021-12-15 12:28:09 -05:00
Jarrod Johnson
c88f34d1e1
Merge tag '3.2.3'
...
Provide more reasonable hostname on install
2021-12-14 11:27:25 -05:00
Jarrod Johnson
e488560090
Induce probe by randomized port
...
Replying to SLP caused some SLP
software to have a bug.
Since we aren't looking for a reply,
instead just throw a byte randomly at a high numbered
port.
2021-12-14 07:49:09 -05:00
Jarrod Johnson
faa20660ed
Assure confluent myname file is owned correctly
...
A lot of osdeploy initialize (which runs as root)
may induce creation of 'myname' file. Fix by
becoming confluent user, if applicable.
2021-12-14 07:24:47 -05:00
Jarrod Johnson
ee950ca8a2
Skip directories in initramfs symlink
...
If part of a debug effort leaves stray directories,
ignore them as they can't possibly be initramfs content.
2021-12-13 15:43:12 -05:00
Jarrod Johnson
743f984b3d
Fix raw integer value support
2021-12-09 14:08:24 -05:00
Jarrod Johnson
ad33572290
Add debug information to coreos init
2021-12-09 11:55:12 -05:00
Jarrod Johnson
773be640f8
Fix for long hostname on CA node
2021-12-09 11:19:16 -05:00
Jarrod Johnson
624984b1c9
Do not assume SPCR until confluent confirms text console
...
TIOCCONS was called for users that did not want to use serial. This
makes the serial console delayeed when automatic, but avoids video
users from being confused.
2021-12-09 10:34:12 -05:00
Jarrod Johnson
c2de127947
Bring el8 completely over to prefer ipv4
2021-12-09 08:31:07 -05:00
Jarrod Johnson
cf686f8018
Prefer IPv4 deployment over IPv6 when both are available
...
Some older vintages of RHEL and clones do not support IPv4,
best to prefer ipv4 to avoid messing up on places that have ipv6
configured.
2021-12-08 17:04:04 -05:00
Jarrod Johnson
d258a2ae0d
Fix py2 compatibility of util
2021-12-08 12:12:39 -05:00
Jarrod Johnson
68bfb950f3
Correect which subprocess module is used by util
2021-12-08 11:26:08 -05:00
Jarrod Johnson
343e5eabe5
Utility function for running commands
...
Given the python2/3 differences, good to have a single run
that returns stdout and stderr.
This should trigger the same behavior as timeout did, but
in a manner consistent between 2 and 3.
2021-12-08 10:20:34 -05:00
Jarrod Johnson
02da50af8b
Tighter permissions on /var/log/confluent
2021-12-08 07:42:19 -05:00
Jarrod Johnson
77de3ab25b
Apply more restrictive permissions to /var/log/confluent/
...
While confluent shouldn't put anything sensitive in the log, custom
content may. To mitigate the risk, it will now lock down the
log permissions.
2021-12-07 07:21:04 -05:00
Jarrod Johnson
dcca844e9b
Refresh eventlet resolver on resolv.conf change
...
Eventlet holds on to stale resolv.conf. As a workaround,
monitor resolv.conf and explicitly reinitialize greendns
resolver.
2021-12-06 12:22:42 -05:00
Jarrod Johnson
1b21b9316c
Correct variable typo in imageboot scripts
2021-12-06 09:00:44 -05:00
Jarrod Johnson
4260db20b7
Make confluent contennt from initramfs avalibale to normal root system
2021-12-03 16:06:47 -05:00
Jarrod Johnson
496be816ff
Add exit 0 to avoid failed systemd unit
2021-12-03 12:50:03 -05:00
Jarrod Johnson
4e0a76d955
Fix typo in confluent name in coreos script
2021-12-03 12:47:05 -05:00
Jarrod Johnson
f2b2d8519c
Add onboot link to coreos relabel activity
2021-12-03 12:45:42 -05:00
Jarrod Johnson
d829db4407
Add onboot hook to coreos
2021-12-03 12:37:03 -05:00
Jarrod Johnson
0e1da6ebd6
Explicitly check for TPM 2.0 before trying to use TPM 2.0
2021-12-03 11:05:11 -05:00
Jarrod Johnson
d2435d315b
Schedule fetch of private data before ignition cares
2021-12-03 10:39:47 -05:00
Jarrod Johnson
4388399f78
Fetch config.ign file during rootfs setup in CoreOS
2021-12-03 09:34:46 -05:00
Jarrod Johnson
a146a54172
Move ignition to profile private data, extracted
2021-12-03 08:48:27 -05:00
Jarrod Johnson
4482b675b4
Wait for network to get ssh certificates
2021-12-03 08:32:25 -05:00
Jarrod Johnson
2b8c8e9af9
Add support for specifying login name in nodeshell
2021-12-03 08:03:09 -05:00
Jarrod Johnson
714a883d9c
Purge the conflucting default nmconnection if we have better
2021-12-02 17:00:10 -05:00
Jarrod Johnson
77865ba71c
Disable fakecmdline for now
2021-12-02 16:40:41 -05:00
Jarrod Johnson
3adb82370f
Specify correct filename for fakecmdline
2021-12-02 16:27:55 -05:00
Jarrod Johnson
7a95c3e64c
Set selinux context of fakecmdline
2021-12-02 16:17:04 -05:00
Jarrod Johnson
e3d5a058d6
Change nodestorage to interactive and alias it to be interactive by default
2021-12-02 14:52:16 -05:00
Jarrod Johnson
25b68665e0
Provide a bit more elaboration on some attribute descriptions.
2021-12-02 11:42:32 -05:00
Jarrod Johnson
42f766d5f4
Fix osdeploy initialize when only ssh or tls is done
...
ssh is technically opt-in, though strongly recommended, so
osdeploy should cope with that.
TLS is pretty much required, but perhaps not done immediately,
so it gets similar treatmennt.
2021-12-02 11:38:18 -05:00
Jarrod Johnson
0092915cab
Fix rerunning tls initialization
2021-12-02 10:19:47 -05:00
Jarrod Johnson
8ecbcb0f00
Fix coreos tendency to disable ipv6
2021-12-01 16:26:13 -05:00
Jarrod Johnson
e5a748f0a2
Fix coreos pre-pivot to work better
2021-12-01 16:00:36 -05:00
Jarrod Johnson
7f476d64b5
Update style of nodesetboot usage message
2021-12-01 15:33:21 -05:00
Jarrod Johnson
90f3d5f323
Fix syntax error in coreos pre-pivot
2021-11-30 09:14:51 -05:00
Jarrod Johnson
00e853130f
Fallback to other location for grub
2021-11-29 16:03:06 -05:00
Jarrod Johnson
a4b1f1d30a
Fix typo in fedora coreos signature
2021-11-29 15:54:38 -05:00
Jarrod Johnson
5718e07238
Treat empty attributes as unset
...
This fixes behavior when, for example, crypted.rootpassword
is explicitly blanked
2021-11-29 11:22:48 -05:00
Jarrod Johnson
d049934626
Add a breadcrum to distinfo.yaml to indicate where an image came from
2021-11-29 09:55:38 -05:00
Jarrod Johnson
425f5276b3
Merge pull request #82 from PenghuiCui/master
...
Support getting message extention in plugin
2021-11-29 07:17:36 -05:00
Penghui Cui
079a04b28b
Support getting message extention in plugin
2021-11-25 10:01:35 +08:00
Jarrod Johnson
2e10289807
Invoke mkinitrd after zypper runs
2021-11-22 10:46:23 -05:00
Jarrod Johnson
e1c15cca8e
Switch to secureboot signed grub for ubuntu
...
It was pulling an efi binary incompatible with secureboot before.
2021-11-19 11:34:06 -05:00
Jarrod Johnson
6e4c939cd9
Various ubuntu diskless fixes/improvements
...
Needed the real losetup to handle read-only file.
busybox wc is way too slow, use ls instead.
Explicitly make /sysroot and load xfs, as that doesn't happen implicitly.
Accept a dangling symlink as viable init, since this is the case in Ubuntu.
Update hostname and ca certificates consistent with
ubuntu standards
2021-11-19 11:00:50 -05:00
Jarrod Johnson
82a783fa55
Register CA certs in global location for ubuntu
2021-11-18 16:51:18 -05:00
Jarrod Johnson
6d623b046a
Fixes for imageboot.sh with ubuntu
2021-11-18 16:34:27 -05:00
Jarrod Johnson
398563df55
Add dirname to the ubuntu diskless
2021-11-18 16:14:44 -05:00
Jarrod Johnson
e653c5dff6
Switch to bash for running functions
...
functions is a bashified facility. Just use bash for it rather
than making it busybox friendly.
2021-11-18 14:56:38 -05:00
Jarrod Johnson
1b7d63da5d
Fix wrong sense of apikey
2021-11-18 13:12:56 -05:00
Jarrod Johnson
c02651b2de
Switch from fork to source for premount
2021-11-18 12:56:53 -05:00
Jarrod Johnson
4316b8690e
Make oscategory consistent for ubuntu
2021-11-18 12:38:11 -05:00
Jarrod Johnson
045caadff9
Add ubuntu scheme to boot assets in imgutil
...
This brings us to the redhat, suse, and ubuntu schemes being understood.
2021-11-18 12:12:55 -05:00
Jarrod Johnson
095339ed90
Have apt-get not prompt to install
2021-11-18 11:43:25 -05:00
Jarrod Johnson
5769cba3d1
Provide functions and update imageboot for ubuntu diskless
2021-11-18 11:25:51 -05:00
Jarrod Johnson
75c5151567
Add hook to hook the premount script
2021-11-18 10:42:22 -05:00
Jarrod Johnson
4a724f28bd
Package imgutil ubuntu content
2021-11-18 10:12:34 -05:00
Jarrod Johnson
ecb9a6633e
Ignore common malformed dhcpv6 request
2021-11-18 09:16:57 -05:00
Jarrod Johnson
bf4842baa9
Provide a starter profile for ubuntu diskless
2021-11-17 16:18:06 -05:00
Jarrod Johnson
172515a6e8
Add packaging of ubuntu20.04-diskless
2021-11-17 16:05:00 -05:00
Jarrod Johnson
dde9eebf92
Further advance ubuntu diskless implementation
2021-11-17 15:57:21 -05:00
Jarrod Johnson
6b8dec7764
Fix license save through collective
2021-11-17 15:56:36 -05:00
Jarrod Johnson
9e47c1cfed
Add mktemp to the confluent hook
2021-11-17 11:15:23 -05:00
Jarrod Johnson
4a13711972
Fix discovery of pre-nonce firmware
2021-11-17 09:39:34 -05:00
Jarrod Johnson
44cc580364
Correct handling of blank value in attribute
2021-11-17 09:24:26 -05:00
Jarrod Johnson
cc1b887c31
Allow blanking to disable a crypted password
2021-11-17 09:00:58 -05:00
Jarrod Johnson
ef324daf52
Advance ubuntu diskless
...
Add tpm2 and fuse dependecies that were missing.
Begin draft work on the init-premount script.
2021-11-16 17:03:48 -05:00
Jarrod Johnson
cd1dff7c42
Add tpm2-tools to pkglist and switch to apt
...
The debootstrap was inadequate to
cover tpm2-tools, switch to apt.
2021-11-16 13:15:18 -05:00
Jarrod Johnson
10c019df2a
Fix ordering of chmod arguments
2021-11-16 11:42:46 -05:00
Jarrod Johnson
bd9c261534
Implement initramfs customization for debian build
...
The initramfstools are extended
to naturally create the materials needed to do diskless.
2021-11-16 11:33:58 -05:00
Jarrod Johnson
c11da229b0
Amend draft ubuntu diskless
...
Have imgutil build work to call
debootstrap with a pkglist that appears to succeed.
2021-11-16 07:44:41 -05:00
Jarrod Johnson
2ef2e4d039
Fix gathered output with non-rectangular geometry
...
If we don't have a nice rectangular count of systems,
the last row must tolerate index error in column.
2021-11-16 06:37:59 -05:00
Jarrod Johnson
8ee3630aa1
Simplify get_nonce
...
Use the helper function, for example
to cope with the prospect of gzip response.
2021-11-15 16:09:17 -05:00
Jarrod Johnson
01a21ec248
Correct syntax error
2021-11-15 11:43:10 -05:00
Jarrod Johnson
218b914754
Fix relative pkglist includes
2021-11-15 11:42:15 -05:00
Jarrod Johnson
d59ac74f3a
Support relative path on < include
...
For pkglist and syncfile, detect
relative path and interpret relative
to the file that does the include.
2021-11-15 11:34:34 -05:00
Jarrod Johnson
7b23ee9c7c
Organize squeeze vertically
...
The web gui and ls on cli use organize output this way,
so squeezed node output should be same.
2021-11-15 10:25:00 -05:00
Jarrod Johnson
55fc3bda51
Fix nodersync with output redirection
...
Variables were left unitialized, use them only
in the tty path.
2021-11-15 09:20:31 -05:00
Jarrod Johnson
d5e4d1b90a
Add navigating nonce login for xcc discovery
...
The nonce login from newer firmware is now required.
2021-11-12 11:27:58 -05:00
Jarrod Johnson
cde45bb170
Commence draaft work on ubuntu diskless
...
Provide a initramfs hook (akin to dracut module) and
a potential pkglist to cover what debootstrap does not
provide by default.
2021-11-11 16:41:13 -05:00
Jarrod Johnson
524f0d460f
Have imgutil exec manifest / mount
...
When execing, make the environment see
the '/' normally in mount/df contexts.
2021-11-11 12:05:53 -05:00
Jarrod Johnson
2b6418bc33
Script to walk identify light along a noderange
2021-11-10 15:19:37 -05:00
Jarrod Johnson
9a6d422fd8
Fix the python3 of rsp read
2021-11-09 16:01:45 -05:00
Jarrod Johnson
ef10237cfe
Update smm rules to relax
2021-11-09 15:58:17 -05:00
Jarrod Johnson
94761ba7c6
Refresh SMM fix expiration sample
2021-11-09 15:54:27 -05:00
Jarrod Johnson
b59c88beed
Explain more about need for -c versus =''
...
The concept of inherited and blank override is confusing
and warrants more documentation.
2021-11-09 08:26:35 -05:00
Jarrod Johnson
cbed20bb7f
Fix suse15 firstboot.sh
...
It was stripping the wrong value from the path.
2021-11-09 07:10:38 -05:00
Jarrod Johnson
61eecd672c
Add confignet to default firstboot/onboot as appropriate for el8 and
...
suse15
2021-11-08 16:34:26 -05:00
Jarrod Johnson
8df1c5b8e4
Make confignet available as a 'common' script
2021-11-08 16:23:56 -05:00
Jarrod Johnson
766230bcd3
Fix loop extending pkgs
...
The attempt at include support modified incorrect
list.
2021-11-06 14:38:44 -04:00
Jarrod Johnson
f1bc82cd08
Fix logic of websocket handling
...
Do not fall through to non-websocket path after handling the websocket
2021-11-05 14:15:39 -04:00
Jarrod Johnson
b139f9cd2c
Consistently return string from consume_termdata
...
If None is allowed to return, it can mess up caller.
2021-11-05 11:30:43 -04:00
Jarrod Johnson
a23d5b9b55
Provide both v4 and v6 in deploycfg
...
When implicitly working by lookup, both v4 and v6
were provided, but first match only
on explicit specification.
Correct this discrepency.
2021-11-04 17:20:49 -04:00
Jarrod Johnson
df7d34dc28
Add attribute support for confluent2hosts
...
Implement something akin to makehosts
from xCAT.
2021-11-04 14:44:06 -04:00
Jarrod Johnson
e749f8f8d5
Prioritize columns over rows
...
Do not make columns when the noderange is too small
to warrant them
2021-11-04 12:44:47 -04:00
Jarrod Johnson
5ceaa0e4fe
Change logreader to python3
2021-11-04 10:53:50 -04:00
Jarrod Johnson
5270f604eb
Fix missing el9 from spec install section
2021-11-04 08:00:37 -04:00
Jarrod Johnson
ce1d89c741
Set nodename as hostname prior to post for el class distros
2021-11-04 07:56:04 -04:00
Jarrod Johnson
4e9020c3a7
Add SUSE support for confignet
2021-11-02 14:04:11 -04:00
Jarrod Johnson
366a2feaaf
Provide api for node to just fetch all it's attributes
2021-11-02 11:21:19 -04:00
Jarrod Johnson
db7cb6450b
Temporarily stop firewalld and add pause to try to wait for address assignment
2021-11-02 09:43:42 -04:00
Jarrod Johnson
ea310e472a
Improve preservation of existing connections/settings
...
When teaming up nics, salvage
things like dns settings from members.
When a connection already seems to exist, modify it rather than delete and replace,
for less disruption.
Running repeatedly should now be safer.
2021-11-01 12:34:37 -04:00
Jarrod Johnson
a5f96ccc5d
Correct whitespace mistake in previous commit
2021-11-01 11:09:45 -04:00
Jarrod Johnson
5e0aced2ea
Merge branch 'master' of github.com:lenovo/confluent
2021-11-01 07:01:56 -04:00
Jarrod Johnson
28a13da118
Fix non-noderange alert specification.
...
The change in to accomodate nodarange without per-node
distinct input claimed the single input data exclusively
for multimode.
Correct by pulling the singleton code to be common if the
check breaks from the for loop.
2021-11-01 06:59:54 -04:00
Jarrod Johnson
6df8170401
Draft confignet implementation
...
This will team and set up additional interfaces,
but, for one, no dns. Need to merge with deploycfg info, since
networkmanager is intent on making dns a
connection oriented thing.
2021-10-29 17:16:16 -04:00
Jarrod Johnson
224663d0c8
Fix execution of confluent functions after run_remote_python
2021-10-29 13:50:04 -04:00
Jarrod Johnson
729408a0cb
Fix run_remote aafter the cleanup was added
...
The removal of the temp dir needed to be linked with
whether the script was dedicated or shared tmp with a run_remote_parts.
2021-10-29 13:01:59 -04:00
Jarrod Johnson
b1ee751c7b
Add newline to error output
2021-10-29 09:43:52 -04:00
Jarrod Johnson
9428c1fb8e
Merge pull request #77 from vmaneagit/patch-80
...
Update nodelicense.ronn
2021-10-29 09:40:39 -04:00
Jarrod Johnson
391963e3f3
Merge pull request #78 from vmaneagit/patch-79
...
Update nodelicense
2021-10-29 09:40:25 -04:00
Jarrod Johnson
78163f1d09
Correct issue in parameter rename for apiclient
2021-10-29 07:23:26 -04:00
Jarrod Johnson
8ef70d463f
Draft client for net configuration
...
Common code to struction networks into structure for configuration.
This organizes and autodetects
overlap, in prep for auto-teaming.
2021-10-28 17:09:09 -04:00
Jarrod Johnson
aff0c82b0b
Fix apiclient with explicit host
2021-10-28 16:15:21 -04:00
Jarrod Johnson
925ea3e95a
Refactor apiclient and allow specific host
...
For getnetcfg, will need to select
spsecific interfaces. While
tocuhing that anyway, simplify the
v4/v6 paths to be more agnostic.
2021-10-28 15:48:58 -04:00
Jarrod Johnson
5b128238e7
Fix netcfg self api call
2021-10-28 15:47:07 -04:00
Jarrod Johnson
6f967a3afa
Bind apiclient search to make for viable firewall rule
2021-10-28 12:55:42 -04:00
Jarrod Johnson
a2a9a38147
Fix mistaken sort
2021-10-28 12:30:06 -04:00
Jarrod Johnson
7eeba4e42a
Rdeuce netlink traffic to get net config
...
Avoid superfluous calls to
get addresses and reuse
result through the lifetime
of a reply.
2021-10-27 17:25:54 -04:00
Jarrod Johnson
5a7f0db899
Fix use of autodetected plen
2021-10-27 17:19:22 -04:00
Jarrod Johnson
00b22bb18b
Improve autosense of other nics
2021-10-27 17:12:03 -04:00
Jarrod Johnson
621ded7256
Prioritize 'none' and support names in _address fields
2021-10-27 17:03:26 -04:00
Jarrod Johnson
ce8e671584
Have includes interpret section names
...
If <including> a syncfiles, then
be sure to honor MERGE/APPENDONCE in those files without perturbing flow
of the parent file.
2021-10-27 15:47:52 -04:00
Jarrod Johnson
41ba28e525
Connect network configuration to selfservice
...
This permits a client to ask via various nics for pertinent configuration .
2021-10-27 15:35:22 -04:00
Jarrod Johnson
ce9b0bf556
Support terminating include with >
...
The previous thought of <base.pkglist is fine, but upon seing <base.pkglist>, that looks better.
2021-10-27 14:21:30 -04:00
Jarrod Johnson
74775fd2be
Remove errant period in attributes
2021-10-27 13:11:24 -04:00
Jarrod Johnson
feb12b95cb
Add facility to enable confignet
...
Provide function to populate
a map of all networking, relative to the interface facing thte client.
2021-10-27 11:52:09 -04:00
Jarrod Johnson
154a328194
Merge pull request #81 from PenghuiCui/master
...
Add check for attribute value to avoid exception when attribute is None
2021-10-26 07:35:10 -04:00
Jarrod Johnson
8eb6ce0b69
Specify absolute path for mktemp
...
mktemp defaults to relative, to produce the correct
behavior, must be absolute template.
2021-10-25 12:03:26 -04:00
Jarrod Johnson
0d53612e9c
Fix variable yielded when not including
2021-10-25 11:57:18 -04:00
Jarrod Johnson
81675faec1
Avoid clearing disk if autopartition is not to be used
2021-10-25 10:05:15 -04:00
Penghui Cui
6e10b3d2b1
Add check for attribute value to avoid exception when attribute is None
2021-10-25 16:11:38 +08:00
Jarrod Johnson
a9bd31a9c4
Provide error when makedirs fails in genesis
2021-10-23 13:08:14 -04:00
Jarrod Johnson
219ad8f56b
Fixes for confluent2hosts
...
python2 compatibility and various scenarios not handled.
2021-10-22 16:07:20 -04:00
Jarrod Johnson
9c0ec25b6e
Merge branch 'master' of github.com:lenovo/confluent
2021-10-22 13:13:25 -04:00
Jarrod Johnson
412e2aaf76
Add '<' include syntax to syncfiles and pkglist
...
Provide means of combining
multiple pkglist and syncfiles
based on hierarchy.
This enables construction of
a more complex structure of
images for those that may want it.
2021-10-22 13:11:50 -04:00
Jarrod Johnson
a48732923e
Merge pull request #80 from PenghuiCui/master
...
Support resource register from plugin
2021-10-21 21:44:39 -04:00
Jarrod Johnson
40dea6a747
Support older python subprocess
...
Older python did not provide timeout. Keep the timeout
for the modern python that skips select without a timeout,
but try again without timeout to retain compatibility.
2021-10-20 18:23:35 -04:00
Jarrod Johnson
d441ff3d63
Fix pxe offers made in spite of managercandidate restriction
2021-10-20 16:45:40 -04:00
Jarrod Johnson
6550d584a2
Give scan callers a context for tracking local interface
...
When trying to leverage autodetect strategy for net config,
will need to keep track of receiving interface. For now
only use ipv6 for this capability, as getting the incoming nic
for ipv4 would be more work.
2021-10-20 14:10:59 -04:00
Jarrod Johnson
8a01a0bbdc
Use the scan_confluent for getting apikey, if relevant
2021-10-20 14:03:03 -04:00
Jarrod Johnson
484a3f8c64
Have apiclient priotize based on responsiveness
2021-10-19 17:09:52 -04:00
Jarrod Johnson
75557091ef
Treat blank enclosure/bay as unset
...
If someone does the obvious approach to blank something,
treat that as equivalent.
2021-10-19 15:43:23 -04:00
Jarrod Johnson
decee2ed93
Add fallback to apiclient
...
When apiclient fails using deploycfg, add
a multicast scan looking for replacements.
2021-10-19 15:39:47 -04:00
Jarrod Johnson
0725717359
Correct some issues in the ssdp snoop
...
We still need the node attributes even if
forcing reply.
Further,, sometimes eventlet returns None, tolerate
that better.
2021-10-19 13:12:35 -04:00
Jarrod Johnson
f8f60052d0
Fix confluent uuid handling
2021-10-19 10:37:08 -04:00
Jarrod Johnson
3cd78500ce
Make client adaptive to receive global data
...
When following, let the leader filter the
relevant global data rather than the follower.
2021-10-19 10:01:44 -04:00
Jarrod Johnson
fd8dd03587
Implement a confluent instance uuid
...
This allows clients to indicate after install
whether they belong to the collective or
not, allowing ascertaining new deployment
server.
2021-10-19 09:57:49 -04:00
Penghui Cui
05a683698e
Support resource register from plugin
2021-10-19 15:31:13 +08:00
Jarrod Johnson
6e7b6188dd
Fix api client attempts and speed up checking connections
2021-10-18 16:31:59 -04:00
Jarrod Johnson
ae7e69d73d
Fix mistake in the apiclient
2021-10-18 15:52:22 -04:00
Jarrod Johnson
0f80b4a019
Change apiclient to embed apikey request
...
No longer require the clorthto utility
to request a token if we are already in
python.
2021-10-18 12:28:59 -04:00
Jarrod Johnson
f93b8da1b7
Handle invalid vendor-class-identifier better
...
If the vci fails to decode, just ignore it and move on.
2021-10-15 16:49:45 -04:00
Jarrod Johnson
1d71cee61d
Fix syncfiles not running with just APPENDONCE
2021-10-15 16:37:02 -04:00
Jarrod Johnson
957679db3c
Update syncfile examples and el7 support
2021-10-15 16:24:22 -04:00
Jarrod Johnson
98a6ffd9b6
Update more profiles with the APPENDONCE support
2021-10-15 16:16:11 -04:00
Jarrod Johnson
2e7b315f29
Add 'APPENDONCE:' section to syncfiles
...
This will APPEND if the target file doesn't
already have the entire source contents in
a contiguous location already. This makes
it more safe to rerun without negative consequence.
2021-10-15 15:48:49 -04:00
Jarrod Johnson
f33ed9b4d9
Cleanup after script execution
...
Leave cleaner tmp directories when functions are ran.
2021-10-15 12:16:48 -04:00
Jarrod Johnson
04dd374bfb
Synchronize functions across the supported OSes
2021-10-15 12:10:24 -04:00
Jarrod Johnson
980c3dbcb3
Make functions common between redhat and suse
2021-10-15 12:07:00 -04:00
Jarrod Johnson
08f61e9391
Fix syntax mistake in the previous commit
2021-10-15 10:06:54 -04:00
Jarrod Johnson
653c0bd695
Bring up both IPv4 and IPv6 in EL8
...
If both are configured, then enable both as early as possible.
2021-10-15 09:30:08 -04:00
Jarrod Johnson
52549ec563
Fix module autoloading in diskless profiles
...
The initramfs has a reduced set of modules to boot and then
in diskless mode hands over to the 'real' OS for all userspace
to use the more substantial root filesystem with all of the modules.
However one exception is kernel module autoload, which induces modprobe
to run in the initial mount namespace unconditionally.
Thus, preserve the ramfs drivers (just in case) but have the autoloading
pivot
to the normal root filesystem to get the full complement of modules.
2021-10-13 11:37:48 -04:00
Jarrod Johnson
351d6a85ee
Fix firstboot with ipv6 deployment in el8
2021-10-12 17:23:18 -04:00
Jarrod Johnson
fda61bd354
Attempt to extend the v6 deployment support in el8
2021-10-12 16:58:42 -04:00
Jarrod Johnson
d06e130af5
Fix ipv6 address specification in el8 scripted install
2021-10-12 16:42:07 -04:00
Jarrod Johnson
5ca3b68b8a
Attempt to support ipv6 deployment in el8
2021-10-12 16:06:37 -04:00
Jarrod Johnson
4f40d9635a
Fix nic config with mismatched gateway family
...
When a gateway exists on a family the node
does not exist for, handle the gateway better.
2021-10-12 15:32:30 -04:00
Jarrod Johnson
b96e9f4f70
Provide better feedback on missing key and skip tpm when not present
2021-10-12 11:39:18 -04:00
Jarrod Johnson
58cf220203
Mask spurious output on disk cleanup
2021-10-11 13:30:31 -04:00
Jarrod Johnson
a0dfd3f42d
Move scripted install to pre-trigger
...
In Stream 9, initqueue is too late to pre-empt the auto dhcp,
move up to pre-trigger and manually trigger to get network
ready for pre-emption.
2021-10-11 13:28:55 -04:00
Jarrod Johnson
57f346fa4c
Implement syncfiles parameters
...
chmod and chown as directed
by the syncfiles file if present
2021-10-08 10:27:57 -04:00
Jarrod Johnson
deb5c2eed8
Fix potential delay in ssh-agent start
...
Be consistent with other check_output
calls to allow eventlet to properly
background the process.
2021-10-08 10:24:35 -04:00
Jarrod Johnson
7ccaa245b6
Provide both string and numeric for owner/group
...
To provide a fallback for unrecognized user/group,
provide an id for syncfileclient to resort for.
2021-10-08 10:02:13 -04:00
Jarrod Johnson
52a7921676
Correct mistakes in syncfile option passing
2021-10-07 18:23:57 -04:00
Jarrod Johnson
3f7a7d09dd
Correct mistake in referencing option string
2021-10-07 18:02:56 -04:00
Jarrod Johnson
c0287e93ed
Roll back rsync ownership
...
Unfortunately, it will try to change parent directories on the way to
the files actually being written.
2021-10-07 16:34:37 -04:00
Jarrod Johnson
a676eb0b83
Syncfile option passing to client
...
Provide a mechanism for a syncfiles to indicate options to the client.
This will be used for owner=, group=, and permissions=
options.
2021-10-07 15:54:53 -04:00
Jarrod Johnson
a0ca3d3122
Extend snmp timeout
...
Default is 1 second, bump to 2 seconds for some
extraordinarily slow switches. This changes
overall to about 10 seconds as there are, by default,
5 retries.
2021-10-07 13:03:05 -04:00
Jarrod Johnson
e52a9ff70f
Have syncfiles attempt to preserve more
...
We cannot preserve symlinks (since we need them intact),
but we can use other rsync features to make synchronization work
better by default.
2021-10-07 13:01:48 -04:00
Jarrod Johnson
3b7e7afc24
Fix inconsistent handling of marginal id in syncfileclient
...
Also, resynchronize syncfileclient across the distributions.
2021-10-07 12:36:52 -04:00
Jarrod Johnson
26c6f1407b
Add syntax for noderange filtering
...
/etc/passwd -> compute,-n11:/etc/passwd
Will cause the line to be used only when the node matches the
compute,-n11 noderange.
2021-10-07 11:26:13 -04:00
Jarrod Johnson
6222883188
Syncronize syncfileclient for el8 diskless and diskful
2021-10-07 11:10:56 -04:00
Jarrod Johnson
a4fc64ea56
Move el9bin build out of spec
...
Since the rpm itself is built in an el7 container, build
binary before spec driven build to be compatible.
2021-10-07 09:18:24 -04:00
Jarrod Johnson
d23f9db6e0
Syncronize diskfull and diskless el8 and el9 functions
2021-10-07 08:38:29 -04:00
Jarrod Johnson
d5bbda9e00
Extend el8 to el9 diskless
2021-10-07 08:22:38 -04:00
Jarrod Johnson
23ff788f09
Fix target for el9 binaries
2021-10-07 08:20:51 -04:00
Jarrod Johnson
172008f942
Attempt to cover centos stream 9 by el8
...
At first glance, there should be similarities,
apart from python differences and need for
different clortho build due to library mismatch.
2021-10-06 16:59:47 -04:00
Jarrod Johnson
2ef41fedf6
Add el9 compatible build
...
CentOS Stream 9 is not backwards compatible enough to run the
same confluent utilities that the other distributions use.
For now, use fedora to build.
2021-10-06 15:51:12 -04:00
Jarrod Johnson
d666050ef7
Consolidate neigh wait time in slp
...
Rather than incurring it on each iteration (causing a scan to take
15 seconds in test), defer to
handle them all later (reducing to 5 seconds to scan).
2021-10-05 10:59:17 -04:00
Jarrod Johnson
3c72f9f18f
Refactor slp neigh warm-up
...
Rather than pulling it out at active_scan level, intervene deeply.
This fixes the problem where an ip gets used as a key rather than mac.
2021-10-05 10:50:51 -04:00
Jarrod Johnson
f50abd662a
Provide analogus improvements to ssdp from slp
...
Recent changes to try to make neigh table fresh and viable in slp
can also apply to ssdp.
Bring those changes forward.
2021-10-05 10:03:28 -04:00
Jarrod Johnson
1fda0e50d8
Fix stub from refactor
...
foobar was a stand-in for continue to
allow refactor, and needed
to be changed to return.
2021-10-05 08:04:58 -04:00
Jarrod Johnson
1a80d9f31a
Extend neigh table refresh to snoop
...
Improve reliability of 'snooping' slp.
2021-10-04 16:36:22 -04:00
Jarrod Johnson
c569826ff1
Improve scan result with missing neigh entries
...
If no neigh table is present for
a given address, send a packet to
induce kernel activity.
Then wait for a bit over 2 seconds to allow for
2 retries (at default settings)
and then proceed assuming all findable neighbor table
entries will be found.
2021-10-04 16:22:12 -04:00
Jarrod Johnson
1c69700e1d
Fix missing port 22
...
Either this was overlooked or the sshd_config stopped including
Port 22. Fix by putting in port 22. If port 22 already existed,
sshd is fine with the configuration being configured twice.
2021-10-01 08:34:51 -04:00
Jarrod Johnson
92949f012f
Merge tag '3.2.2'
...
Fix collective mode
2021-10-01 08:03:50 -04:00
Jarrod Johnson
398c8b3a71
Improve syncfiles permission denied reporting
...
When a non-readable file was
encountered, confluent would
cryptically report rsync failure.
Check for the usual culprit, unreadable files if rsync fails.
Cause this error to manifest with clearer text.
2021-09-30 12:01:29 -04:00
Jarrod Johnson
c93917e4a4
Add a failsafe for errors trying to connect to a new leader
...
Provide better experience in the face of the class of errors such
as the one fixed by previous commit.
2021-09-30 08:18:39 -04:00
Jarrod Johnson
c1113430a2
Pass only the name rather than full sockaddr on retire
...
Followers of a server that is retiring to join the better leader
were being given incorrect format which would fail in the dns lookup.
2021-09-30 08:11:19 -04:00
Jarrod Johnson
d899cfbf1a
Clean disk to install in pre
...
Installers frequently fail if there's a derelict lvm on disk.
Explicitly remove the on-disk content and deactive lvm to let
anaconda work reliably.
2021-09-29 14:31:18 -04:00
Jarrod Johnson
99ba4e7765
Handle ip aliases in pxe
...
Use netutil assessment of the
best server ip for pxe responses.
Using 'recvip' is too simplistic for broadcast
packets. recvip just gets the first ipv4 address on the interface,
when an alias may be better.
netutil assesses all the possible aliases, thus has better logic and pxe.py
now uses it.
2021-09-27 11:04:42 -04:00
Jarrod Johnson
929392c746
Fix hangs on check_output
...
Eventlet narrowly targets overriding
select in subprocess, to avoid rewriting adequate functions.
However, subprocess does an 'optimization' to skip
select if there's fewer than 3 pipes to juggle and no timeout specified.
Induce python to always use select
by specifying a very long timeout.
This causes confluent to be able to spawn multiple subprocesses and
not be hung waiting for input.
2021-09-23 10:42:47 -04:00
Jarrod Johnson
5d20ee6cca
Serialize ssh agent interaction
...
Race conditions could occur when multiple
requests came in too close together.
2021-09-23 09:40:10 -04:00
Jarrod Johnson
42038048da
Drop PC from the speed prefix
2021-09-22 10:52:29 -04:00
Jarrod Johnson
d08d597818
Properly show DCPMM in nodeinventory
2021-09-22 10:50:32 -04:00
Jarrod Johnson
3869dd6918
Fix imgutil capture
...
Adding options for oshandler
broke fingerprinting for capture.
Fix by passing None and triggering the AttributeErrors.
2021-09-22 08:17:18 -04:00
Jarrod Johnson
4ab5cac3eb
Generate random serial number for certificate
...
Hardcoding 0x123 serial number would cause strict clients to reject the
certificate.
While we are still not guaranteeing uniqueness, the chances of a
duplicate are impossibly small.
2021-09-22 07:48:44 -04:00
Jarrod Johnson
3a911acb81
Fix the efibootmgr override logic
...
Fully realize the chroot invocation of efibootmgr and also
bail out if no new boot number is detected.
2021-09-21 15:50:45 -04:00
Jarrod Johnson
1cb5efae75
Call efibootmgr in chroot for ubuntu
2021-09-21 11:21:13 -04:00
Jarrod Johnson
861c0230c7
Reorder ubuntu to first in post
...
Ubuntu tends to install itself as behind network
device. Amend to match other OSes and avoid network
boot.
2021-09-21 10:03:29 -04:00
Jarrod Johnson
3b3fffb36b
Note workaround for 'No data available'
...
In a diskless boot, sometimes the build system
might not label the scratch contents
correctly. setfiles can be used to fix it.
Notably, this seems to cause the overlay+squashfs to
return 'no data available' on select
calls even with selinux disabled, so it may be another
gap with overlay and/or limitation of squashfs when
queried about modification without a label.
2021-09-21 08:13:06 -04:00
Jarrod Johnson
dd89c48b9a
Fix problem where syncfiles could fail on certan hosts
...
If the set of oldhosts and newhosts were just so,
targlines or sourcelines could be all
null and cause index errors.
2021-09-20 08:01:41 -04:00
Jarrod Johnson
6acd3c2b7d
Add ability to execute functions as a command
...
This gives easier access over nodeshell and similar to run functions by executing the
functions as a script with arguments.
2021-09-20 08:00:35 -04:00
Jarrod Johnson
fdc9b3c283
Add confluent2hosts utility
...
Add utility to help add/modify /etc/hosts for a noderange.
Also fix buggy code in syncfileclient noticed while
reusing it for confluent2hosts.
2021-09-17 12:57:18 -04:00
Jarrod Johnson
1b88e44c59
Ignore broken lldp results
...
Some switches may have broken incomplete records,
skip such records to focus on viable complete records.
2021-09-16 15:49:36 -04:00
Jarrod Johnson
f881f955d4
Correct typo in ubunut initramfs scripts
2021-09-15 12:20:08 -04:00
Jarrod Johnson
9687ce89b8
Use fe80:: match to find index for getting addresses
...
This fixes a problem where fetching
from fe80:: fails to identify nic.
2021-09-13 17:54:18 -04:00
Jarrod Johnson
5276618b73
Actually remove group on split
2021-09-13 14:09:07 -04:00
Jarrod Johnson
38669ddbbc
Have nodegroupremove accept comma delimited groups
2021-09-13 14:01:46 -04:00
Jarrod Johnson
2dcd0f769a
Support defining multiple groups in one go
2021-09-13 13:48:56 -04:00
Jarrod Johnson
d254cb08ac
Default to None for second arg to get_apikey
...
In some context, we don't need to check both, we have a confirmed manager. Just take
one argument for that scenario.
2021-09-13 11:48:36 -04:00
Jarrod Johnson
66ddcfc194
Separate connection check from connection
...
Messing with connect corrupted
the http client too much,
have a separate helper function to evaluate
the candidate deployers,
then pass only the winner on.
2021-09-13 11:21:38 -04:00
Jarrod Johnson
95ea913108
Have genesis opt into ipv6 deploycfg
2021-09-13 10:26:50 -04:00
Jarrod Johnson
52bebe41d1
Provide ipv6 only for deploycfg2
...
Older profiles may trip over new network
lines, spare them 'v6' entries until
they opt into deploycfg2.
2021-09-13 10:26:17 -04:00
Jarrod Johnson
06e32c53cc
Fix overly vague extraction of deploy_server
...
If deploy_server appears anywhere, it confuses
the scripts
2021-09-13 10:23:13 -04:00
Jarrod Johnson
7ba10e559e
Correct ipv4/v6 handling in get_apikey
2021-09-13 10:03:32 -04:00
Jarrod Johnson
cf097b153e
Fix typo in genesis network bringup
2021-09-10 12:50:06 -04:00
Jarrod Johnson
269d9c79d1
Let functions set confluent_mgr
...
The better logic in functions is used instead of the simplistic logic.
2021-09-10 12:28:00 -04:00
Jarrod Johnson
1c3c54a35b
Update functions to be more thorough
...
confluent_mgr could be ipv6 or
may need to be updated from a
link local or may need to go to copernicus data to work.
2021-09-10 11:40:17 -04:00
Jarrod Johnson
66d378a007
Simplify the ipv6 support and fix invocation before deploycfg
2021-09-10 09:16:08 -04:00
Jarrod Johnson
35b74764bf
Amend apiclient to support v4/v6
2021-09-09 17:15:29 -04:00
Jarrod Johnson
11796cda81
Correct the ipv6 prefix name
2021-09-09 16:51:27 -04:00
Jarrod Johnson
8eb242cba0
Add ipv6 support to genesis
2021-09-09 16:27:59 -04:00
Jarrod Johnson
a4de3b93ec
Merge branch 'master' into ip6
2021-09-08 12:44:05 -04:00
Jarrod Johnson
a3486c5e68
Skip calling localectl when possible
...
localectl can sometimes be unworkable,
prefer sourcing the relevant configuration files directly
when possible.
2021-09-08 12:43:56 -04:00
Jarrod Johnson
465b973f79
Add unencrypted option to pack and rework multi-repo support
...
Support skipping encryption if a user does not want it. Further support mulitple '-r'
arguments and fix builds when
no -r is specified.
2021-09-08 12:43:50 -04:00
Jarrod Johnson
20f607f49e
Skip calling localectl when possible
...
localectl can sometimes be unworkable,
prefer sourcing the relevant configuration files directly
when possible.
2021-09-08 12:42:43 -04:00
Jarrod Johnson
3c7034edf2
Add unencrypted option to pack and rework multi-repo support
...
Support skipping encryption if a user does not want it. Further support mulitple '-r'
arguments and fix builds when
no -r is specified.
2021-09-08 12:17:30 -04:00
Jarrod Johnson
3762a37243
Provide advertise and reply
...
Since the packets are the same, just need to handle the
request type.
2021-09-07 16:50:55 -04:00
Jarrod Johnson
f3d7a949e6
Fix ipv6 netboot support to get to request
...
A number of mistakes were in
netutil and the advertise needed
to be complete and transmitted.
2021-09-07 16:13:27 -04:00
Jarrod Johnson
10e408559b
Merge branch 'master' into ip6
2021-09-07 11:10:25 -04:00
Jarrod Johnson
6465203918
Add ability to pack and combine with a previous baseprofile
...
For example, this is a good complement to unpack in a tethered environment:
unpack profile-v1 /root/scratch
#modify /root/scratch
pack /root/scratch profile-v2 -b profile-v1
2021-09-03 16:14:44 -04:00
Jarrod Johnson
de5350ca6e
Fix additional repository argument for suse build
2021-09-03 15:12:06 -04:00
Jarrod Johnson
5422f904f9
Add a breadcrumb for scripts to detect exec context
2021-09-03 12:11:10 -04:00
Jarrod Johnson
57a8149844
Fix adding repositories to rhel-style diskless
2021-09-03 09:16:22 -04:00
Jarrod Johnson
558139d654
Fix bug around pulling in img build info
2021-09-02 12:11:48 -04:00
Jarrod Johnson
63d9aea218
Support relative paths for build scratchdir and pkglist
2021-09-02 12:10:07 -04:00
Jarrod Johnson
5d1d527e09
If reasonable, provide a 'distribution' link for diskless
...
If the user uses '-s', then
preserve that in distribution like a diskful one would.
2021-09-02 11:58:22 -04:00
Jarrod Johnson
19685b7a4e
Accept relative path for unpack
2021-09-02 11:38:09 -04:00
Jarrod Johnson
adcc2f0aa9
Add some usage to the volume flag for now '-'
2021-09-02 11:30:51 -04:00
Jarrod Johnson
fbef6442d5
Add a shorthand '-' to say 'mount to same path as outside'
2021-09-02 11:29:40 -04:00
Jarrod Johnson
bf017b55e1
Have unpack more intuitively target the specific directory
...
This makes it symmetric witht pack/unpack.
2021-09-02 11:22:45 -04:00
Jarrod Johnson
bcc278e4d8
Add losetup for new suse support
2021-09-02 10:30:30 -04:00
Jarrod Johnson
0d2ecd460d
Merge changes from EL8 imageboot
2021-09-02 10:17:11 -04:00
Jarrod Johnson
ac45d6e578
Support non-interactive request to exec command
...
Make outside scripting easier by accepting an optional command
to run in exec environment.
2021-09-02 09:06:57 -04:00
Jarrod Johnson
237670e9b1
Rework gpg key import for suse build
...
Only pull in host keys when not using a source.
When using source(s), pull in all normal gpg keys from local filesystem sources.
2021-09-02 08:39:45 -04:00
Jarrod Johnson
f65056a047
Fix Suse image fingeprinting
2021-09-02 08:05:11 -04:00
Jarrod Johnson
6264dc1ed1
Add host pubkeys to build root
2021-09-01 16:17:34 -04:00
Jarrod Johnson
a7d894007f
Treat netgroup entries differently
2021-09-01 11:00:53 -04:00
Jarrod Johnson
27a1649d94
Add more in-context stateless documentation
...
Specify what default behavior is and reason to choose one over
the other.
2021-09-01 10:44:25 -04:00
Jarrod Johnson
96f50519d8
Fix typo in imgutil
2021-09-01 10:38:49 -04:00
Jarrod Johnson
925cca1733
Add some commentary
2021-09-01 10:28:49 -04:00
Jarrod Johnson
9afa33d0cc
Assisted redfish bmc setup
...
This is a quick example script of using
confluent switch scanning in conjunction with
checking dhcp leases to handle some generic redfish
bmc.
2021-09-01 10:23:43 -04:00
Jarrod Johnson
6c32630bd9
Fix multi-server reply processing
...
The stateless code could get confused by multiple offers,
fix the mistake.
2021-08-30 11:24:57 -04:00
Jarrod Johnson
aaea5bcaeb
Make sure the netlink socket closes on the way out
2021-08-30 09:01:42 -04:00
Jarrod Johnson
3d4462d788
Fix support for newer XCC firmware
...
Newer XCC firmware requires more parameters for usermodify
2021-08-27 18:29:38 -04:00
Jarrod Johnson
d69de62077
Amend setinitalpwd
2021-08-27 16:37:26 -04:00
Jarrod Johnson
c48f3a8b59
Sample script to navigate first password change
2021-08-27 16:13:14 -04:00
Jarrod Johnson
ce98ff6b3d
Fix suse imgutil build function
2021-08-27 09:03:35 -04:00
Jarrod Johnson
e35ce77bc7
Fix SUSE imgutil
2021-08-27 08:46:47 -04:00
Jarrod Johnson
c2de5fa580
Fix SUSE imgutil
2021-08-27 08:46:23 -04:00
Jarrod Johnson
a9044238ba
Further the IPv6 support
2021-08-26 17:44:30 -04:00
Jarrod Johnson
dd1615b4a7
Fixes for imgutil
2021-08-26 16:03:38 -04:00
Jarrod Johnson
f2fcbc887d
Fixes for imgutil
2021-08-26 16:03:17 -04:00
Jarrod Johnson
d4a846e786
Merge branch 'master' into ip6
2021-08-26 12:23:29 -04:00
Jarrod Johnson
7c617a160b
Close socket in relay_data
...
Closing the socket outside of relay_data causes relay_data
to stay alive, causing eventlet to think a filehandle is open that is not.
A reasonable question would be why eventlet fails to error that read
when the filehandle is closed, but for now, move the close activity
to the relay_data handler.
This resolves "Second simultaneous read on fileno" conditions introduced
by the fix for leaking filehandles.
2021-08-26 11:52:22 -04:00
Jarrod Johnson
d0c23e490b
Tolerate delays in crypt-dm completion for imgutil
2021-08-26 10:38:34 -04:00
Jarrod Johnson
6bf51a20b2
Set nodename as hostname prior to post for el class distros
2021-08-26 09:33:16 -04:00
Jarrod Johnson
3e21587f22
Update error text for redfish to cover completely unsupported redfish
...
systems
2021-08-26 08:58:02 -04:00
Jarrod Johnson
1b3231377c
Draft work to update pxe and netutil for ipv6 support
2021-08-25 17:58:36 -04:00
Jarrod Johnson
ba7ccaa7f2
Document the netlink data in neighutil
2021-08-25 17:57:52 -04:00
Jarrod Johnson
093e961613
Merge branch 'master' into ip6
2021-08-25 15:59:06 -04:00
Jarrod Johnson
b4ee1ab6af
Fix imgutil build
2021-08-25 15:58:48 -04:00
Jarrod Johnson
3eb9ef720b
Fix imgutil build
2021-08-25 15:58:17 -04:00
Jarrod Johnson
597db2138f
Begin work on ipv6 netboot support
2021-08-25 09:21:12 -04:00
Jarrod Johnson
6bb6b362ab
Provide support for merging multiple sources to single destination
2021-08-24 17:39:06 -04:00
Jarrod Johnson
0cfd18d84e
Add a little main to experiment with neighutil
2021-08-24 17:18:10 -04:00
Jarrod Johnson
51a73737a7
Fix new neigh behavior
...
It would sometimes miss a lookup.
2021-08-24 17:15:56 -04:00
Jarrod Johnson
4f4d02d68f
Refactor neighutil
...
Stick to bytes in the expensive part, only convert to and from
presentation form on lookup need.
Convert all external calls to a unified lookup logic.
2021-08-24 16:19:41 -04:00
Jarrod Johnson
797465b3eb
Handle some intra-collective errors better
2021-08-24 15:50:03 -04:00
Jarrod Johnson
69b58836f6
Change to built in neigh fetch
...
Rather than outsource, slowly,
to ip neigh for this frequent task,
call netlink directly.
2021-08-24 11:54:33 -04:00
Jarrod Johnson
06cfd408fc
Fix handling of abrupt client close
2021-08-24 07:57:14 -04:00
Jarrod Johnson
b367d8ea50
Fix ntpcfg handling in autoyast
2021-08-20 11:12:22 -04:00
Jarrod Johnson
30e901ef19
Attempt -p and -r arguments to add repos and speciy alternate pakagke list.
2021-08-18 17:34:27 -04:00
Jarrod Johnson
b44ac19723
Provide some info on image progeny on pack
2021-08-18 15:50:03 -04:00
Jarrod Johnson
f855dda70f
Sort list of distributions and profiles
...
The default sort order of listdir
isn't particularly helpful to anyone.
2021-08-18 15:40:58 -04:00
Jarrod Johnson
b07ca72a8b
Close stray filehandles
...
Proxied terminals and dispsatched
requests would leak filehandles.
2021-08-17 17:18:10 -04:00
Jarrod Johnson
d3b6326673
Fix incorrect variable name for starting tmux
2021-08-12 16:47:03 -04:00
Jarrod Johnson
216a390229
Further refine TERM for tmux
2021-08-12 16:33:46 -04:00
Jarrod Johnson
93c52c6981
Improve tmux draw behavior in genesis
2021-08-12 16:31:26 -04:00
Jarrod Johnson
ef43d91164
Have diskless environment prefer 'primary' interface too
2021-08-12 15:20:43 -04:00
Jarrod Johnson
130e3adbc6
Add uuid fill-in for pxe when policy allows
...
If permissive or open, and xcc is known, but uuid missing,
fill it in.
If open or pxe, and can know node through XCC fingerprint,
then accetp that as a clue.
Also, do not search ethernet switches when xcc cert helps identity.
2021-08-12 14:17:57 -04:00
Jarrod Johnson
0f543c80e9
Add a more specific error if we have a guess about nodename
...
If a manual add procedure has not
specified a mac or uuid, but
the discovery framework has a guess about it,
have that guess appear
in events with suggestion on
how to proceed.
2021-08-12 13:07:57 -04:00
Jarrod Johnson
e9bc7ebe8d
Finish conversion of imgutil to argparse
2021-08-12 09:15:15 -04:00
Jarrod Johnson
8a8e9718f9
Begin migration of imgutil to argparse
...
We no longer support python 2.6, we can use argparse for better subcommand handling.
2021-08-11 17:01:32 -04:00
Jarrod Johnson
865021beff
Unack to rootfs
...
This keeps things neutral and leaves the door open for multipart
support
2021-08-11 16:14:46 -04:00
Jarrod Johnson
034eca3bb0
Refine PXE/HTTP log
...
Add logs for ignored boot requests, suppress discovery warning for known uuids,
and generally throttle logging these to once per mac address per minute.
2021-08-11 08:14:32 -04:00
Jarrod Johnson
6b28877828
Add iputils to have ping in suse
2021-08-11 07:31:58 -04:00
Jarrod Johnson
71342272bf
Add imgutil unpack
...
Provide capability to unpack previously packed diskless images.
2021-08-10 09:04:30 -04:00
Jarrod Johnson
1e418e1bcf
Stub to drive unpack feature
2021-08-09 16:47:27 -04:00
Jarrod Johnson
225618ef75
Add stall in firstboot for deployer to be available
2021-08-09 15:19:36 -04:00
Jarrod Johnson
2a0491ef0c
Add ability to specify custom increment in []
...
Often, it's desired to target odd or even, provide custom increment/step syntax,
but only in the [] context.
Perhaps one day can add n1-n12:2 support, but for now, this is easier to handle.
2021-08-09 11:19:07 -04:00
Jarrod Johnson
db9df97fa0
Check and error if user request non-existant profile
...
This provides nice and immediate feedback for a common mistake.
2021-08-09 09:49:10 -04:00
Jarrod Johnson
f9846cb564
Fix inability to delete a completed servicedata event
2021-08-05 08:31:13 -04:00
Jarrod Johnson
91caf76cae
Fix ownership problems with build and capture
...
Some parent directories were never given to confluent user
2021-08-04 12:12:57 -04:00
Jarrod Johnson
9bfdd20919
Add sanity check to confluent start
...
Refuse to start if /etc/confluent is in bad shape that
may create issues later.
2021-08-04 10:54:21 -04:00
Jarrod Johnson
c3e342a8c0
Fix ordering of python path discovery
2021-08-03 16:48:30 -04:00
Jarrod Johnson
54fde4af21
Fix pessimistic error on apikey
...
Actually make sure that the apikey retrieval failed before erroring.
2021-08-03 16:44:03 -04:00
Jarrod Johnson
fc22c87ce9
Fix typo in informational message
2021-08-02 16:03:37 -04:00
Jarrod Johnson
48d84a5422
Fix get_json
...
Some handlers may work in bytes or str,
normalize to str on the way out.
2021-08-02 14:35:59 -04:00
Jarrod Johnson
b604ec4773
Fix detection of missing sync source
...
Rather than just assume we want a directory when glob
finds no matches, just take the empty result.
2021-08-02 11:33:08 -04:00
Jarrod Johnson
2219297afc
Fix simple password support
...
Simple password was broken during the MFA addition, restore
the most common authentication mechanism.
2021-07-29 13:16:33 -04:00
Jarrod Johnson
08f226a3bf
Recognize Ubuntu 20.04.2
2021-07-28 14:31:04 -04:00
Jarrod Johnson
a25a10cb86
Add firstboot/post directories to ubuntu
2021-07-28 08:52:05 -04:00
Jarrod Johnson
af9676ee6f
Improve appearance of imgutil capture
...
Provide more feedback with less worrisome normal output.
2021-07-27 08:36:48 -04:00
Jarrod Johnson
4c96735b6d
Add ssh to post phase of cloning
2021-07-26 13:51:36 -04:00
Jarrod Johnson
ac86961e24
Perform syncfiles on clone deployment post
2021-07-26 13:29:33 -04:00
Jarrod Johnson
6adc736450
Relocate syncfiles path to correct location
2021-07-26 13:22:31 -04:00
Jarrod Johnson
8ab6fef632
Fix kernel selection on pack
...
Make a specialized sort
for kernel versions to more reliably identify the latest version.
2021-07-26 13:03:26 -04:00
Jarrod Johnson
065d0585ea
Make search for grub.cfg more specific
...
grub.cfg outside of /boot can easily exist, be more specific about where it can be.
2021-07-26 12:17:15 -04:00
Jarrod Johnson
ca8f6fa52c
Bash completion for imgutil capture
2021-07-26 11:59:04 -04:00
Jarrod Johnson
a720ccdbc8
Set ownership/permissions of private section
...
Fix confluent being unable to read, and make the permissions more consistent.
2021-07-26 11:12:59 -04:00
Jarrod Johnson
0ad59436ec
Mitigate scratch consumption
...
As an old file is copied in for future disposale, delete
it as we go by fallocate
to punch holes in it.
2021-07-26 09:19:33 -04:00
Jarrod Johnson
663f8fc085
Add nodename to set_confluent_vars
...
It is expected that nodename would also be set.
2021-07-23 19:08:06 -04:00
Jarrod Johnson
a7b9e72589
Fixes and update umage2disk to new multipart format
2021-07-23 19:06:14 -04:00
Jarrod Johnson
9eb6f38bf1
Various fixes to imageboot.sh
2021-07-23 18:43:57 -04:00
Jarrod Johnson
4928f50332
Create private directiories and correct key format
2021-07-23 17:43:47 -04:00
Jarrod Johnson
7f468c3a91
Correct offset to be in sectors, not bytes
2021-07-23 17:32:42 -04:00
Jarrod Johnson
81b4da6a95
Add encrypted stateless pack
2021-07-23 17:11:33 -04:00
Jarrod Johnson
4bde1b963f
Transfer encryption key on capture
2021-07-23 16:54:57 -04:00
Jarrod Johnson
1e44deecf6
Add support to retrieve private key and crypt mount diskless/cloning
2021-07-23 16:49:02 -04:00
Jarrod Johnson
1e653851fe
Add syncfiles to el8 diskless
2021-07-23 16:23:15 -04:00
Jarrod Johnson
54667570bd
Create encrypted image and private profile data
...
Prepare for securing os profile witht custom images
2021-07-23 16:13:24 -04:00
Jarrod Johnson
364085801a
Fix apikey variable
2021-07-21 17:44:43 -04:00
Jarrod Johnson
8171d461ea
Another selinux fixup
...
systemctl enable firstboot
produces invalid selinux context, fix aafter enabling.
2021-07-21 17:34:53 -04:00
Jarrod Johnson
3690dda177
Actually enable firstboot execution
2021-07-21 16:48:38 -04:00
Jarrod Johnson
365b81e7e1
Prune all .gitignore files, not just blessed profiles
2021-07-21 13:57:06 -04:00
Jarrod Johnson
b3fee922f9
Try to speed up selinux labelling
...
There's only a couple of places
where the imaging should need fixup, be more selective in relabel.
2021-07-21 13:26:31 -04:00
Jarrod Johnson
29d0dd6678
Add missing profile content for cloning
2021-07-21 12:47:43 -04:00
Jarrod Johnson
7d31e22447
Add post/firstboot to os cloning
2021-07-21 12:28:03 -04:00
Jarrod Johnson
4ddfa192ba
Remove sticky bit from profile directory
2021-07-21 12:16:22 -04:00
Jarrod Johnson
fa45ea8ad3
Finalize a captured image
2021-07-21 11:56:15 -04:00
Jarrod Johnson
f4281e115b
Fix permissions on generated profile.
2021-07-21 11:53:51 -04:00
Jarrod Johnson
5dfbeef79c
Advance state of cloning
...
Have imgutil complete the capture process, splitting work
between target and repository.
Provide hook through kcmdline to induce installtodisk.
Have installimage reboot system cleanly when done.
Have new /etc/confluent in cloned system.
Hook for post scripts to execute.
2021-07-21 11:15:42 -04:00
Jarrod Johnson
cd8a1dfe5e
Draft work to flesh out profile and pull back
...
Fingerprint the target and prepare for more effort.
Will have another imgutil primitive for post-capture prep to get the
initramfs, kernel, rootimg, and bootloader content ready for copy.
2021-07-20 17:02:08 -04:00
Jarrod Johnson
2257a67420
Begin wiring imgutil for remote capture
...
Will be having to run on remote
system and local system
and combining the results
as well as cleaning up after ourselves on target.
2021-07-20 15:56:47 -04:00
Jarrod Johnson
55302b74d9
Have prototype cloning implemented
...
Go ahead and relabel all selinux content, ssh keys, grub, and efiboot entry.
2021-07-20 14:07:55 -04:00
Jarrod Johnson
22008f9dc9
Image cloning changes
...
Refactor and try to mask ssh
keys for root user.
Try to preserve selinux context for masked files.
Add progress indicator for writing to disk.
2021-07-19 17:30:26 -04:00
Jarrod Johnson
db735a654d
Aggregate vt buffer feeds
...
If we start developing a backlog
of content to feed to the buffer manager,
aggregate updates to batch submit them more efficiently.
2021-07-19 11:16:12 -04:00
Jarrod Johnson
cbee00d3bb
Fix initial collective join
...
Initial collective join combined
with the orderly collective startup
hit a chicken and egg problem.
Disable initting on first enrollment
to let enrollment drive
that specific initialization to
restore behavior.
2021-07-19 10:26:05 -04:00
Jarrod Johnson
a8b54ff434
Fix initial collective join
...
Initial collective join combined
with the orderly collective startup
hit a chicken and egg problem.
Disable initting on first enrollment
to let enrollment drive
that specific initialization to
restore behavior.
2021-07-19 10:25:35 -04:00
Jarrod Johnson
fada9336ee
Fix swapsize float in image install
...
If it undergoes float arithmetic, it must be made int again.
2021-07-16 17:23:21 -04:00
Jarrod Johnson
bda51d2106
Start fixup, first up is the fstab
...
Provide an fstab consistent
with redhat strategy, but with
the new uuids from imaging.
2021-07-16 17:02:53 -04:00
Jarrod Johnson
88d49c9f40
Start image2disk
...
This marks having written out
the partitions verbatim.
2021-07-16 16:29:56 -04:00
Jarrod Johnson
c92b2f4255
Stage for python application to actually execute the install
2021-07-16 12:03:11 -04:00
Jarrod Johnson
ece525c2e2
Begin work on install and filter small devices from install candidacy
2021-07-16 11:11:13 -04:00
Jarrod Johnson
386dc2348c
Mount multiple partitions in diskless mode
2021-07-16 10:39:11 -04:00
Jarrod Johnson
da44738e00
Generalize more of an OS on capture
...
/etc/fstab, hostname, and networnk-scripts are masked
for the image.
2021-07-15 17:30:50 -04:00
Jarrod Johnson
e43e5ac167
Add confluent_imgutil to addons
2021-07-15 14:42:26 -04:00
Jarrod Johnson
9458d33cc5
Add multipart image support to diskless
2021-07-15 14:39:17 -04:00
Jarrod Johnson
831b129899
Correct syntax error in confluent client
2021-07-15 12:39:38 -04:00
Jarrod Johnson
1570d3dbe3
Add c utility for reading confluent multipart images
2021-07-15 12:39:19 -04:00
Jarrod Johnson
46c0852b6f
Add more non-json data to image format
2021-07-15 12:38:50 -04:00
Jarrod Johnson
e3bd1d6cac
Correct format of confluent multipart magic
2021-07-15 11:24:49 -04:00
Jarrod Johnson
597faecc04
Change error for nodefirmware with present, but empty noderange
2021-07-15 11:24:23 -04:00
Jarrod Johnson
85643d82e8
Add losetup to el8 stateless
...
For multipart support, need to manually
set up loop mount and dmsetup.
2021-07-15 10:45:38 -04:00
Jarrod Johnson
7e07ec96a2
Combine json and images into a single multi-part file
...
This will facilitate urlmount use for mounting without
downloading.
2021-07-15 09:12:17 -04:00
Jarrod Johnson
eb3dd0f10a
Begin work on imgutil capture
...
Provide mechanism to capture for cloning purposes.
2021-07-14 17:36:55 -04:00
Jarrod Johnson
a953a6afba
Provide clearer error when osdeploy initialize is not done
...
osdeploy import needs to have things prepared by
osdeploy initialize. Check for it having run and error if needed.
2021-07-14 15:40:38 -04:00
Jarrod Johnson
f7a80c6ac0
Fix nodeattrib when a list member is 'broken'
...
If 'broken' was used as a group name, it would behave incorrectly.
Only check 'broken' for dict types.
2021-07-14 08:06:52 -04:00
vmaneagit
5728e141a4
Update nodelicense.ronn
...
Man page clarification - file as license file, name as license feature name.
2021-07-14 13:46:08 +03:00
vmaneagit
f531c1b856
Update nodelicense
...
Usage clarification - file as license file, name as license feature name.
2021-07-14 13:43:57 +03:00
Jarrod Johnson
101b5685d1
Move kickstart.custom fetch to before pre.d
...
Allow custom scripts to further customize kickstart.custom
by modifying /tmp/kickstart.custom
2021-07-12 09:23:01 -04:00
Jarrod Johnson
71d8b89a57
Fix profile name not being set in time
2021-07-09 16:22:57 -04:00
Jarrod Johnson
ea26478714
Add needed dependency for OFED
2021-07-08 11:54:14 -04:00
Jarrod Johnson
175f9317ac
Skip 32bit portion of mofed
2021-07-08 11:45:43 -04:00
Jarrod Johnson
b291dee68c
Add bind-utils, skip iwl*-firmware, and alphabatize packages
2021-07-08 11:38:50 -04:00
Jarrod Johnson
4f77615161
Provide a sample container build
2021-07-08 09:39:36 -04:00
Jarrod Johnson
430428eba2
Add missing dependencies to the confluent server package
2021-07-08 09:33:35 -04:00
Jarrod Johnson
4dee174bee
Merge pull request #64 from vmaneagit/patch-64
...
Update nodeconfig.ronn
2021-07-08 09:25:11 -04:00
Jarrod Johnson
766a5e0fd2
Merge pull request #61 from vmaneagit/patch-62
...
Update confluentdbutil.ronn
2021-07-08 09:23:54 -04:00
Jarrod Johnson
90a3839353
Merge pull request #65 from vmaneagit/patch-65
...
Update nodeeventlog
2021-07-08 09:23:32 -04:00
Jarrod Johnson
ce17015baf
Merge pull request #68 from vmaneagit/patch-68
...
Update nodelicense.ronn
2021-07-08 09:22:41 -04:00
Jarrod Johnson
360ff0798c
Merge pull request #69 from vmaneagit/patch-69
...
Update noderemove
2021-07-08 09:22:24 -04:00
Jarrod Johnson
c2bd12234b
Merge pull request #70 from vmaneagit/patch-70
...
Update nodersync.ronn
2021-07-08 09:22:03 -04:00
Jarrod Johnson
51f1c67a64
Merge pull request #63 from vmaneagit/patch-63
...
Update nodeconfig
2021-07-08 09:21:50 -04:00
Jarrod Johnson
c3634fe75c
Merge pull request #66 from vmaneagit/patch-66
...
Update nodelicense
2021-07-08 09:21:34 -04:00
Jarrod Johnson
8f394f230c
Merge pull request #71 from vmaneagit/patch-71
...
Update nodersync
2021-07-08 09:21:20 -04:00
Jarrod Johnson
b21d462acf
Merge pull request #72 from vmaneagit/patch-73
...
Update noderun.ronn
2021-07-08 09:20:51 -04:00
Jarrod Johnson
dc32813882
Merge pull request #73 from vmaneagit/patch-72
...
Update noderun
2021-07-08 09:20:38 -04:00
Jarrod Johnson
c8ead7bb6d
Merge pull request #74 from vmaneagit/patch-74
...
Update nodepower.ronn
2021-07-08 09:19:56 -04:00
Jarrod Johnson
f352a10000
Merge pull request #75 from vmaneagit/patch-78
...
Update nodepower
2021-07-08 09:19:39 -04:00
Jarrod Johnson
dd4f329139
Finish changes to builddeb script for vtbufferd
2021-07-01 16:45:20 -04:00
Jarrod Johnson
90bde09c82
Fix make clean without binary existing
2021-07-01 16:39:36 -04:00
Jarrod Johnson
2d2e8114b3
Add install section for Makefile in debian packaging
2021-07-01 16:34:06 -04:00
Jarrod Johnson
b87580466e
Add debian packaging for vtbuffered
2021-07-01 16:31:59 -04:00
Jarrod Johnson
08cf1bbf48
Fix the sed syntax for LEAP import
2021-07-01 14:07:43 -04:00
Jarrod Johnson
e565a1752f
Fix LEAP initprofile behavior
2021-07-01 13:43:31 -04:00
Jarrod Johnson
ef1649208e
Switch to using separate CA for TLS
...
This allows regenerating TLS cert
without updating boot images.
For example, if ip address changes need a new cert, no
longer should the nodes need new certs to trust
just due to that.
2021-06-30 14:25:46 -04:00
Jarrod Johnson
35b9635840
Clear armed API if current node token is used
...
If a node is armed, but instead unseals the prior key from TPM,
implicitly clear the armed state to avoid leaving it armed.
2021-06-28 13:30:09 -04:00
Jarrod Johnson
9c43dbff47
Rework MFA handling
...
Avoid calling PAM in the parent process, as
this seems to cause problems with some PAM
configurations.
2021-06-28 11:34:11 -04:00
Jarrod Johnson
f830514d10
Implement support for additional pam prompts
...
For example, if PAM has OTP, then support it.
2021-06-25 17:26:32 -04:00
Jarrod Johnson
f2eba22b9b
Fix TLS certs for el8 diskless
...
Properly place and process
the TLS certs for a site.
2021-06-25 13:06:35 -04:00
Jarrod Johnson
1fcab688dd
Fix connection name in networkmanager diskless
2021-06-25 10:56:35 -04:00
Jarrod Johnson
abfa2c4f7c
Switch back to default curl output
...
The terminal size on console is a challenge.
2021-06-24 17:01:35 -04:00
Jarrod Johnson
3be73af07e
Change style of download progress in curl
...
Use a simpler progress bar.
2021-06-24 16:46:10 -04:00
Jarrod Johnson
a2b2c8a995
Remove extraneous '/' output
...
Suppress output of cd -, as
it's a bit odd during boot.
2021-06-24 15:57:03 -04:00
Jarrod Johnson
42f8056d56
Fix apiclient with TPM managed token
...
The retry mechanism is amended
to clear out the useless key
and start trying to get a network grant again.
2021-06-24 14:53:54 -04:00
Jarrod Johnson
2ef695324a
Migrate genesis to new TPM strategy
...
Have addons for genesis
implement the same TPM usage
model as the suse/redhat stateless.
2021-06-24 14:35:21 -04:00
Jarrod Johnson
4c6f0843f9
Remove microcode from genesis
...
Should not be needed for genesis level activity, and consumes a large
amount of storage.
2021-06-24 14:00:19 -04:00
Jarrod Johnson
c19ae8a451
Add tpm2 tools to genesis
...
Follow the design of the stateless usage of TPM
2021-06-24 13:20:47 -04:00
Jarrod Johnson
a8e152cc4a
Switch TPM strategy on RedHat diskless
...
Switch to thte same approach as used in suse:
-Try to unseal any persistent handles
-If that works, try to use it on network
-If it didn't work, clear that handle
-When an api key is retrieved, then seal it to pcr 15
-When it's all done, extend pcr15 to prevent the OS from being able to
unseal
2021-06-24 12:04:10 -04:00
Jarrod Johnson
c92b3aea9d
Mitigate error output from extraneous handles
...
Unrelated handles in use will no longer result in misleading console
output.
2021-06-24 11:41:34 -04:00
Jarrod Johnson
5be4a5ab73
Add missing TPM utilities to suse boot
2021-06-24 11:22:41 -04:00
Jarrod Johnson
3c41c52d77
Rework TPM usage in SUSE diskless
...
For one, need to detect stale
TPM value and clear them.
For another, seal to PCR 15 and extend after unlock, so that the booted
system is unable to retrieve
the data from the TPM (e.g.
a plain user by default is allowed
to unseal data if there's no
policy, so use a policy and
extend the state away before boot)
2021-06-24 11:09:37 -04:00
Jarrod Johnson
e24a3a7231
Change media_url
...
Have autoyast file pass validation and adapt
the processing to work with it.
2021-06-24 08:27:55 -04:00
Jarrod Johnson
bffb7a8cac
Correct typo in suse install autoconsole message
2021-06-23 17:52:21 -04:00
Jarrod Johnson
feb418ac59
Store TPM unsealed apikey in usual location
2021-06-23 17:22:18 -04:00
Jarrod Johnson
ee5ea4263f
Add curl to suse15 pkglist
2021-06-23 17:16:13 -04:00
Jarrod Johnson
b30fabd55d
Enable TPM2 on SUSE diskless for apikey
...
Rather than remote sealed copy, store it in the TPM2
Will convert genesis and EL diskless for this to be the new preferred
mechanism.
2021-06-23 17:01:27 -04:00
Jarrod Johnson
b8c9e9c535
Begin work to support complex PAM conversations
...
For example, TOTP setups need
more prompts, this will pass
the info to the client for the client to adjust.
2021-06-23 16:31:42 -04:00
Jarrod Johnson
d86fc664e9
Handle space delimiting in nameservers
...
If multiple dns servers, then need to quote to preserve
the list.
2021-06-23 12:35:54 -04:00
Jarrod Johnson
6862d9e580
Correct formatting of nameserver list in suse
2021-06-23 12:26:49 -04:00
Jarrod Johnson
dc8cb1b13f
Correct syntax in imageboot for suse
2021-06-23 12:24:36 -04:00
Jarrod Johnson
f10d2af59f
Specify netconfig file location
2021-06-23 12:16:08 -04:00
Jarrod Johnson
172bb12885
Modify Suse diskless for suse networking
...
Suse doesn't use network manager, populate sysconfig
instead.
2021-06-23 12:07:13 -04:00
Jarrod Johnson
4445b8cc78
Fix name resolution for suse hosts/containers
...
Suse uses a strategy with symlinks, adapt
the resolv.conf target based on findings from
symlink chasing.
2021-06-23 11:49:16 -04:00
Jarrod Johnson
b2fa2d92c5
Correct formatting mistake in os profile label in diskless
2021-06-23 11:32:43 -04:00
Jarrod Johnson
fc19ca4e36
Change to pythton-dnspython for dependency
...
Multiple compatible packages exist that provide same name, accept
either.
2021-06-23 08:37:00 -04:00
Jarrod Johnson
23231e2b75
Have Suse15 diskless prep initrd and enable sshd
2021-06-22 16:59:12 -04:00
Jarrod Johnson
9ad5f52eed
Package up suse diskless support
2021-06-22 16:37:04 -04:00
Jarrod Johnson
76f3537a79
Further advance SUSE15 diskless support
2021-06-22 16:18:32 -04:00
Jarrod Johnson
b26b46dc41
Crate dracut module for suse15
2021-06-22 14:49:15 -04:00
Jarrod Johnson
deec9b111a
Initial phase of suse diskless support
2021-06-22 14:29:28 -04:00
Jarrod Johnson
59e6dc80b3
Remove commented, non-working concept code
...
The code was going to replace XInclude with something more manual
from sed and xml comments, but yast strips the comments.
So we instead manually make hooks for the replacement items.
2021-06-22 12:21:18 -04:00
Jarrod Johnson
e34d76f7eb
OpenSUSE 15.3 support
...
A number of changes in opensuse 15.3 require modifying our
strategy.
No more XInclude. This seems to be unintentional, but it released
and so we will work around it.
Some somewhat incorrect values, as pointed out by new validation.
2021-06-22 12:19:54 -04:00
vmaneagit
7f74476e5a
Update nodepower
...
Updated line 35 to address the syntax mismatch between usage and man page SYNOPSIS
2021-06-16 18:25:10 +03:00
vmaneagit
d201358c78
Update nodepower.ronn
...
Updated lines 6 and 30 to address the syntax mismatch between usage and man page SYNOPSIS
2021-06-16 18:19:49 +03:00
vmaneagit
902f9831cd
Update noderun.ronn
...
Updated line 6 to address the syntax mismatches between usage output and man page SYNOPSIS
Line 18 has been updated to address the options listed differently between usage output and man page
2021-06-16 17:36:56 +03:00
vmaneagit
3723eadcfc
Update noderun
...
Syntax mismatches between usage output and man page SYNOPSIS
Updated line 42:
usage="Usage: %prog [options] <noderange> <command expression>",
2021-06-16 17:33:26 +03:00
vmaneagit
52d7bcbdb9
Update nodersync
...
Updated line 43:
usage="Usage: %prog <file/directorylist> <noderange>:<destination>",
Syntax mismatch between usage output and man page SYNOPSIS
2021-06-16 17:23:18 +03:00
vmaneagit
f33e35cebf
Update nodersync.ronn
...
Updated line 15:
* `-f COUNT`, `-c COUNT`, `--count=COUNT`:
Options on SYNOPSIS page different than usage options
2021-06-16 17:23:03 +03:00
vmaneagit
2f00b31eb0
Update noderemove
...
Updated line 36:
usage='''\n %prog <noderange>
SYNOPSIS has < > around noderange whereas usage output does not
2021-06-16 17:11:11 +03:00
vmaneagit
bbad704f43
Update nodelicense.ronn
...
Updated the syntax mismatch between usage output and man page SYNOPSIS
Line 6 was modified:
`nodelicense <noderange> [list][install <filename>|save <directory>|delete <license>]`
2021-06-16 16:58:21 +03:00
vmaneagit
a05a95433d
Update nodelicense
...
Fixing syntax mismatch between usage output and man page SYNOPSIS
Updated line 39
"%prog <noderange> [list][install <filename>|save <directory>|delete <name>]")
2021-06-16 16:49:53 +03:00
vmaneagit
15d4247cf1
Update nodeeventlog
...
usage output doesn't have < > around noderange were as SYNOPSIS on man page does
Usage: nodeeventlog [options] noderange [clear]
SYNOPSIS: nodeeventlog [options] <noderange> [clear]
Line 40 has been updated:
usage="Usage: %prog [options] <noderange> [clear]")
2021-06-16 16:17:08 +03:00
vmaneagit
4b45c148c8
Update nodeconfig.ronn
...
Updated the Syntax mismatch between usage output and man page SYNOPSIS
Options -b settings.batch, --batch=settings.batch and
-r COMPONENT, --restoredefault=COMPONENT
were only shown as -b, --batch and -r, --restoredefault
2021-06-16 15:30:01 +03:00
vmaneagit
47a8da5ed0
Update nodeconfig
...
updated line 46:
argparser = optparse.OptionParser(usage="Usage: %prog [options] <noderange> [setting|setting=value]")
to match the man SYNOPSIS
nodeconfig [options] <noderange> [setting|setting=value]
2021-06-16 15:26:28 +03:00
Jarrod Johnson
f0693f6ee5
Correct typo in imgutil
2021-06-15 13:45:27 -04:00
Jarrod Johnson
84634afc9c
Improve imgutil brevity
...
Allow it to take only the basename and
default to likely /var/lib/confluent locations
Draft work on tab completion for imgutil.
Technically the tab completion should be in the imgutil package,
but for now bundle with server.
2021-06-15 13:30:30 -04:00
Jarrod Johnson
5621d48ffa
Fix syntax error with new check
2021-06-15 12:23:45 -04:00
Jarrod Johnson
55a4211e71
Fix imgutil volume mounting
2021-06-15 12:12:27 -04:00
vmaneagit
03b644be7f
Update confluentdbutil.ronn
...
Man page is missing part of the password option as shown under usage
from usage output:
-p PASSWORD, --password=PASSWORD
2021-06-15 17:28:30 +03:00
Jarrod Johnson
802ba9c708
Merge pull request #60 from vmaneagit/patch-61
...
Update collective.ronn
2021-06-15 09:42:48 -04:00
Jarrod Johnson
490827fe3a
Allow memory reclamation through deletion
...
When going to zram, things were solid for space reduction as
data was written, however memory could no longer be reclaimed.
It turns out that zram supports TRIM, and by telling xfs discard,
we have it do trim-on-demand. It is by default off out of performance
concerns, but I don't think that applies to a zram backed filesystem.
2021-06-15 09:36:44 -04:00
vmaneagit
85568091fa
Update collective.ronn
...
Added correction for:
"collective gencert collective delete" should be on 2 separate lines.
correction should be:
collective gencert
collective delete
2021-06-15 16:25:26 +03:00
Jarrod Johnson
2ecab0432c
Fix imageboot.sh issues for diskless boot
2021-06-15 08:58:21 -04:00
Jarrod Johnson
dee03e1359
Attempt to updateboot at end of pack
2021-06-15 08:41:33 -04:00
Jarrod Johnson
3f87696978
Fix typo in imageboot.sh script
2021-06-15 08:38:27 -04:00
Jarrod Johnson
38a4e20b9a
Fix issues around imageboot and source in functions
2021-06-15 08:31:45 -04:00
Jarrod Johnson
1d8d0699bc
Fix ability to copy profiles during pack
2021-06-15 08:11:31 -04:00
Jarrod Johnson
62ac393721
Fix imgutil profile path and osdeploy diskless layout
2021-06-15 08:00:09 -04:00
Jarrod Johnson
1d148afd70
Add sourcing of functions to dracut hook
2021-06-14 18:46:36 -04:00
Jarrod Johnson
e6550d8160
Fix use of label in profile.yaml
2021-06-14 16:55:32 -04:00
Jarrod Johnson
0079e5c437
Change imgutil packaging and pkglist path
2021-06-14 16:46:23 -04:00
Jarrod Johnson
cce2c6d6db
Add missing Release and remove stale binaries from git
2021-06-14 16:16:19 -04:00
Jarrod Johnson
e32e40f451
Correct build script typo
2021-06-14 16:14:13 -04:00
Jarrod Johnson
e50423881d
Correct spec name in imgutil build script
2021-06-14 16:12:43 -04:00
Jarrod Johnson
82b94e3ff9
Add build script for imgutil
2021-06-14 16:12:01 -04:00
Jarrod Johnson
03cb065342
Fix inconsistency with naming of profiles
2021-06-14 16:09:48 -04:00
Jarrod Johnson
cb4b8ab06f
First pass at packaging imgutil
2021-06-14 16:02:52 -04:00
Jarrod Johnson
ac2474f43e
Attempt to fixup ownership, if applicable on the output
2021-06-14 15:17:54 -04:00
Jarrod Johnson
e678ca24f9
Attempt to pull in osdeploy profile information
2021-06-14 14:59:59 -04:00
Jarrod Johnson
60aef0767c
Pull in the diskless profile content for os deploy
2021-06-14 14:38:38 -04:00
Jarrod Johnson
15f5ec9362
Rename common to 'default'
2021-06-14 14:37:40 -04:00
Jarrod Johnson
870c8255f4
Move diskless to el8-diskless
...
The code so far is EL8 specific, properly
organize it.
2021-06-14 14:36:23 -04:00
Jarrod Johnson
795645f90a
Extract boot logic from 'addons.cpio'
...
Make it easier to see and customize image boot script
behavior, leaving addons.cpio only to bring up network
and set up ssh.
2021-06-14 14:33:35 -04:00
Jarrod Johnson
99a42af907
Add zram module to stateless images
2021-06-14 14:31:57 -04:00
Jarrod Johnson
24d33256ca
Fix typo in dracut configuration
2021-06-14 13:45:44 -04:00
Jarrod Johnson
334ec3a74f
Refactor for multi-os support and improve initramfs experience
...
Organize el8 specific content to separate spaces for future
development of other OS support
Also, make the diskless initramfs a natural result of
dracut activity, so that normal rpm updates and oob driver
installs produce the expected initramfs without further
intervention.
2021-06-14 13:09:25 -04:00
Jarrod Johnson
261def8de2
Rename and refactor imgutil to separate rpm
2021-06-14 07:39:01 -04:00
Jarrod Johnson
25f65a278f
Notation on untethered option
2021-06-11 16:18:59 -04:00
Jarrod Johnson
f565030087
Switch to zram for overlay
...
Further mitigate unevictable memory penalty
for written files in stateless.
2021-06-11 16:16:17 -04:00
Jarrod Johnson
8edd2a28e4
Merge branch '3.2'
2021-06-10 18:51:56 -04:00
Jarrod Johnson
7122c17ce0
Remove pyte requirement
...
We no longer use pyte, remove the requirement.
2021-06-08 16:43:06 -04:00
Jarrod Johnson
f5f16dac7a
Fix nodebmcreset partial success
...
The error handling is improved, to
catch both noderange global issues as well
as partial completions.
2021-06-08 09:12:33 -04:00
Jarrod Johnson
fa3220f3d1
Actually fix up the osdeploy build
...
For now, stub out the diskless profile dir, which doesn't quite
exist yet.
2021-06-04 17:45:52 -04:00
Jarrod Johnson
14bc4df92e
Fix path mistake in osdeploy build script
2021-06-04 17:33:14 -04:00
Jarrod Johnson
1645d47b73
Fix clortho
...
The suggested correection for clortho was in fact
incorrect. Revert back and cast it.
2021-06-04 17:19:19 -04:00
Jarrod Johnson
bbe9bc3e06
Constrain plugin collections to flat by default
...
When asking for a path that exceeds the plugincollection,
thten provide generic 'not found' behavior.
2021-06-04 14:48:31 -04:00
Jarrod Johnson
58157b23d7
Error if noderange includes too many )
...
By default, pyparsing consumes only as much of the
input as matches the grammar. Tell it to consume all
of the noderange and error if there's more string than
matches our grammar.
2021-06-04 14:19:06 -04:00
Jarrod Johnson
b8ddf149bd
Skip newer agent behaviors with incompatible old ssh
...
The previous attempt to support older ssh failed to completely
enact old behavior when needed.
2021-06-04 13:40:39 -04:00
Jarrod Johnson
bf158bc5aa
Prep for diskless specific profile categories
2021-06-03 18:20:47 -04:00
Jarrod Johnson
8228c345bc
Fix the build path of the stateless path
2021-06-03 18:12:18 -04:00
Jarrod Johnson
8eecd03d4b
Correct path name in build process
2021-06-03 17:50:01 -04:00
Jarrod Johnson
044ae53ae3
Add symlink for site, and placeholder for addons
...
Will need to detect the proper 'category' for
the addons link.
2021-06-03 17:20:41 -04:00
Jarrod Johnson
1a30876a2d
Begin work to package diskless support
...
First will work on the 'addons' portion of the needed
work.
2021-06-03 17:17:42 -04:00
Jarrod Johnson
e0c59cc341
Fixup c utilities and add start_root
...
The diskless will use start_root to boot the 'main' OS as a container.
2021-06-03 17:06:10 -04:00
Jarrod Johnson
93c21d4148
Commit to python3 ofr imgutil
...
The imgutil will never be supported with python2,
so we will go ahead and commit to python.
2021-06-03 16:52:22 -04:00
Jarrod Johnson
e23a88a4c3
Have resolv.conf more reliably work
...
Also, make sure it is read-only in the exec case
2021-06-03 15:47:17 -04:00
Jarrod Johnson
1289f95584
Merge branch '3.2'
2021-06-03 14:22:38 -04:00
Jarrod Johnson
db965f133e
Add a 'pack' and attempt to bind /etc/resolv.conf on exec
...
This facilitates custom manual image work
2021-06-02 17:26:46 -04:00
Jarrod Johnson
2073926256
Improve ctrl-c and other behaviors of osdeploy import
...
More reliably delete an import attempt to avoid odd behaviors.
2021-05-27 16:10:06 -04:00
Jarrod Johnson
734e12f0f1
Amend long wait to only apply to shutdown
...
The previous 30 seconds was a good amount to
wait for everything but a graceful shutdown.
The new 5 minute wait is too long to wait to
find out a system can't turn on.
Apply the 5 minute wait only on clean shutdown
request.
2021-05-27 09:57:07 -04:00
Jarrod Johnson
deb2b98e7f
Merge pull request #59 from zhougj4/master
...
[merge-LXCA] pull request
2021-05-27 09:54:44 -04:00
Zhou Guangjun
32c84993b0
[merge-LXCA] fix problem in merge with upstream - htmlify the dict
...
Details:
Revision: d9cc888e68abe7794ade82a251c4dffe9108a014
Author: Michael Du <duxd2@LENOVO.COM >
Date: 2017/8/2 21:06:22
2021-05-27 09:58:05 +08:00
Jarrod Johnson
48ff1fd12c
Fix background mode of urlmount
...
Need the recheck thread managed in the background process if using
urlmount the normal way.
2021-05-26 18:21:06 -04:00
Jarrod Johnson
bca5d9497f
Implement failback facility
...
Treat the url list as an ordered list of priority. Occasionally check
the more preferred paths for health if they had been detected as bad.
2021-05-26 17:54:33 -04:00
Jarrod Johnson
9be039b8e5
Continue advancing the img build and exec utility
2021-05-26 15:18:01 -04:00
Jarrod Johnson
a3266ad01c
Begin next draft of genimage
...
Write in python and support sourcing
only from local directories if desired.
2021-05-25 17:27:07 -04:00
Jarrod Johnson
e1a4f370b2
Implement node name subtitution in nodeshell
...
If wanting to ssh to 'altenative interfaces', provide -s to facilitate that
behavior, with added flexibility
compared to previous incarnations.
2021-05-25 15:46:22 -04:00
Jarrod Johnson
a7e7e647f3
Fix hang on ctrl-e,c,p,o
...
Leave the function to
consume termdata if data
is available.
2021-05-25 14:26:49 -04:00
Jarrod Johnson
9bdef5bbb9
Fix typo in confetty
2021-05-25 11:58:20 -04:00
Jarrod Johnson
af10e0ea91
Explicitly provide content-length 0 on 204
...
For some vintages of eventlet+apache, this is required
to avoid invalid responses from the server.
2021-05-25 10:18:13 -04:00
Jarrod Johnson
8455d30687
Disable selinux for now in a built image
2021-05-24 18:30:48 -04:00
Jarrod Johnson
903160f748
Fix the draft genimage script
2021-05-24 17:37:47 -04:00
Jarrod Johnson
52005dd6ae
Further flesh out diskless profile
2021-05-24 16:20:54 -04:00
zhougj4
7363af866f
Merge branch 'lenovo:master' into master
2021-05-24 10:46:50 +02:00
Jarrod Johnson
9ca42081de
Try to add onboot service to diskless
...
It didn't quite work yet, but commit the progress so far.
2021-05-21 17:07:32 -04:00
Jarrod Johnson
6c6b766f37
Fix non-root node to node ssh in diskless
2021-05-21 13:18:29 -04:00
Jarrod Johnson
a9b412fb81
Add node to node ssh to diskless
2021-05-21 12:41:58 -04:00
Jarrod Johnson
7c4b500e92
Add boot.img function to CoreOS
2021-05-21 11:11:01 -04:00
Jarrod Johnson
31ca787380
Register the service as needed for startup in CoreOS init
2021-05-21 07:50:50 -04:00
Jarrod Johnson
0ee67b8584
Mak the script executable for coreos bringup
2021-05-21 07:48:25 -04:00
Jarrod Johnson
19874d8032
Add coreos support to build
2021-05-21 07:32:47 -04:00
Jarrod Johnson
086def0bb8
Updates to the coreos support
...
Bring in and let ignition do the driving if the import had one.
2021-05-20 17:33:22 -04:00
Jarrod Johnson
9ac4cf0641
Rename generically to coreos
...
We should be able to support either RH or Fedora
flavors.
2021-05-19 17:28:05 -04:00
Jarrod Johnson
52b39e632d
Draft CoreOS support
...
Preliminary work toward supporting CoreOS
2021-05-19 17:12:56 -04:00
Jarrod Johnson
e167949db2
Fix comments and improve randomness
...
Since the granularity on time could cause a boot to
select the same 'random' entry, use better seed
for rand()
2021-05-19 11:05:58 -04:00
Jarrod Johnson
4ed9219704
Fix overruning the urls buffer
...
Technically, MAX_URL_PATHS would be one past the
buffer allocated, so it needs to stay under
that value.
2021-05-19 09:22:13 -04:00
Jarrod Johnson
5e1c366e0b
Publish urlmount.c as 'misc'
...
It hasn't been packaged yet, but make it public while getting
ready to package.
2021-05-19 09:03:06 -04:00
Jarrod Johnson
85c3ca8c75
Pass root password onto diskless if set
...
This honors the administrator
setting the password in the
confluent database for the diskless node.
2021-05-18 15:25:26 -04:00
Jarrod Johnson
a1ddb2323a
Have networkmanager be content with diskless
...
Create an .nmconnection file
that sastisfies networkmanager
about the interface that confluent brought up.
2021-05-18 15:24:43 -04:00
Jarrod Johnson
efd7f1de63
Conditionally apply agent to sshutil
...
Older OSes (RHEL7/SLES12) cannot
do ssh-keygen with an agent.
Degrade to classic confluent behavior when that happens.
2021-05-18 12:28:22 -04:00
Jarrod Johnson
b63565972b
Improve error on nodeconfig parse errors
...
The current error is vague and confusing, clarify with
more data showing what went wrong.
2021-05-18 10:33:27 -04:00
Jarrod Johnson
bb1559c8a2
Add support for Intel E810 (ice) to confluent genesis
2021-05-18 09:56:02 -04:00
Jarrod Johnson
a93a8d5cd1
Add ice driver to default diskless images
2021-05-18 09:55:27 -04:00
Jarrod Johnson
af06c150b0
Add error message for long profile names
...
If a profile name pushes the filename field of dhcp
beyond what it can support, log an event and
do not offer a corrupted
dhcp offer packet.
2021-05-18 09:44:02 -04:00
Jarrod Johnson
7e14b41ef4
Fix typo in the genimage script
2021-05-14 16:40:48 -04:00
Jarrod Johnson
9c8529e9b4
Fix network interface names in confluent diskless
2021-05-14 16:36:43 -04:00
Jarrod Johnson
90daf5d5e3
Further advance the confluent diskless support
2021-05-14 15:58:57 -04:00
zhougj4
a28cd1055f
Merge branch 'lenovo:master' into master
2021-05-14 08:07:23 +02:00
Jarrod Johnson
103b398629
Begin work to use urlmount
2021-05-13 18:58:37 -04:00
Jarrod Johnson
cc9bb0533d
Change CSV to have unix style line endings
...
The excel dialog has nice minimal quoting, but DOS line endings.
Unix dialog has good line endings, but excessive quoting.
Create a hybrid dialect and use it for nodesensors output.
2021-05-13 10:38:02 -04:00
Zhou Guangjun
32db72e38f
[merge-LXCA] (138083) [ipmi] Restart Normally and Power off Normally job failed with the message Ensure that the endpoint is reachable on the network from LXCA
...
Details:
Revision: d02e5b653f764aeca44efd108acaabc8b173b482
Author: Zhou Guangjun <zhougj4@lenovo.com >
Date: 2018/10/17 17:26:39
2021-05-13 14:34:02 +08:00
Jarrod Johnson
51dece94ab
Add draft for what will be genimage
...
Still very much prototype, but put it in github
to prepare to bring it together.
2021-05-12 18:13:55 -04:00
Jarrod Johnson
689418c8f1
Merge remote-tracking branch 'lenovo/master'
2021-05-12 17:32:51 -04:00
Jarrod Johnson
df2604291d
Fix refactored inline command run
...
This addresses the mistake in
refactoring the inline command
shortcut
2021-05-12 13:48:44 -04:00
Jarrod Johnson
9b7a40a358
Merge pull request #58 from zhougj4/master
...
[merge-LXCA] Add support for graphical consoles
2021-05-12 07:31:50 -04:00
Zhou Guangjun
9648f1c8ac
[merge-LXCA] Add support for graphical consoles
...
Details:
Revision: a0f0309ee0bc731463794da9d685fa56bc62bc6f
Author: Allan Vidal <avidal@lenovo.com >
Date: 2015/11/26 3:50:31
2021-05-12 10:49:13 +08:00
Jarrod Johnson
9f45b0ed56
Draft support for stateless images
...
Aim is to support a few modes of operation:
-tar.xz, extracted to memory (most inefficient, least dependency)
-nfs read-only (less secure, more efficient, depends on getting nfs
export just right)
-nfs image read-only (same as above, but using squashfs to make overlay
more easily happily)
-gocryptfs on nfs (this provides encryption and integrity check)
2021-05-11 17:05:12 -04:00