Skip to content

Rework enrol workflow#1909

Open
stevekeay wants to merge 4 commits intomainfrom
rework-enrol-workflow
Open

Rework enrol workflow#1909
stevekeay wants to merge 4 commits intomainfrom
rework-enrol-workflow

Conversation

@stevekeay
Copy link
Copy Markdown
Contributor

This is somewhat of an opinionated move from a large, complex workflow
that calls lots of different python scripts to a minimal workflow that
executes one single script to take all required steps.

In theory there are benefits to the multiple workflow steps, but in
practice I don't think we really benefit from the hardcore argo
functionality, and the workflows are fragile, difficult to read, almost
impossible to test, inscrutable to troubleshoot. By contrast the
python script is easily maintainable.

The python script is "beefed up" with extra capabilities and it now
handles the transitioning of the node through the various stages,
including configuring RAID, running inspection, etc.

Logging and error handling is improved.

Ability to cope with non-standard cabling is improved slightly - we used
to rely completely on a cabling convention to determine which port
should be used for PXE. We now detect that from the LLDP data reported
by the BMC (when available - note that we have hardware where the LLDP
feature does not work). This provides us with the chassis MAC address
of the connected switch. Until we can find an easy way to look this up,
we allow the user to pass one or more PXE switch MACs on the command
line.

User can pass a list of known switches to prefer.
The python script is "beefed up" with extra capabilities and it now
handles the transitioning of the node through the various stages,
including configuring RAID, running inspection, etc.

Logging and error handling is improved.

Ability to cope with non-standard cabling is improved slightly - we used
to rely completely on a cabling convention to determine which port
should be used for PXE.   We now detect that from the LLDP data reported
by the BMC (when available - note that we have hardware where the LLDP
feature does not work).  This provides us with the chassis MAC address
of the connected switch.  Until we can find an easy way to look this up,
we allow the user to pass one or more PXE switch MACs on the command
line.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant