Commit Graph

15 Commits

Author SHA1 Message Date
Jonathon Anderson
a1832ad8c1 Complete transfer of Warewulf from HPCng
Warewulf is now being maintained in its own GitHub organization at
github.com/warewulf

Signed-off-by: Jonathon Anderson <janderson@ciq.com>
2024-01-26 21:35:04 -07:00
Christian Goll
b4acf0fdf2 added hash check for node edit
Signed-off-by: Christian Goll <cgoll@suse.de>
2023-03-24 19:47:22 +01:00
MatthewHink
d8cd6049ac Initial cut of wwapi.
We need an API for Warewulf in order to automate around it. The initial version of the API will look a lot like wwctl. wwctl will call the API so that we do not need to maintain separate code paths. In this preview wwctl calls the API via direct function call, but we can change that to a gprc or REST call to a Warewulf server in the future.

This commit contains:
wwapid WareWulf API Daemon. A grpc server with mTLS auth.
wwapic WareWulf API Client. A grpc client with mTLS auth. It's just a sample that reads the version from the server.
wwapird WareWulf API Rest Daemon. A http REST reverse proxy to wwapid.
There are also sample insecure and secure curls to test with.

Implemented Functionality:
wwctl node add
wwctl node delete
wwctl node list
wwctl node set
wwctl node status
wwctl container build
wwctl container delete
wwctl container import
wwctl container list
wwctl container show

Some notes on the files:

    Logic that was in wwctl has moved to warewulf/internal/pkg/api. wwctl just calls the API. wwctl functionality is unchanged.
    Everything under the /google directory is copied google proto code to stand up wwapird. It's a bit strange to copy in the code, but that is currently how it's done.
    Everything in warewulf/internal/pkg/api/routes/wwapiv1 is generated code.

There are some loose ends here, such as no service installers. I just ran off the command line for development.
The Makefile could use improvement. I'm building by make clean setup proto all build wwapid wwapic wwapird ; echo $?
I copied the configs from warewulf/etc to /usr/local/etc/warewulf manually.
2022-06-24 08:39:30 -07:00
jcsiadal
0b93d6c277 Update help
Signed-off-by: jcsiadal <jeremy.c.siadal@intel.com>
2021-11-08 11:36:21 -08:00
Christian Goll
b3743657b2 dynamic nouns for 'wwwctl kernel' 2021-09-28 10:01:54 +02:00
Gregory Kurtzer
a82e1b0ea5 Fixed formatting across entire project 2021-08-21 08:04:47 -07:00
Niko Kivel
5ffda2da3f removed group and controller 2021-05-14 15:17:32 +02:00
Gregory Kurtzer
4bc523a052 Optimized sorting methods across nodes and profiles 2021-04-25 15:43:35 -07:00
Gregory Kurtzer
cc0f465eaf Remove tabs. 2021-04-20 13:05:12 -04:00
Cooper, Trevor
b7908d8747 add SetYes to node delete command 2021-04-15 08:05:28 -07:00
Gregory Kurtzer
72b1d8c9d8 UI Updates with a few minor fixups scattered here and there 2021-01-14 20:23:42 -08:00
Gregory Kurtzer
4d752a67db Added controllers, services, and lots of various optimizations and fixes 2020-11-30 23:07:42 -08:00
Gregory Kurtzer
5cd1dc901e Lots of updates with the node management CLI tools 2020-11-22 20:35:13 -08:00
Gregory Kurtzer
5181940952 Working through node and group configuration via CLI 2020-11-21 21:51:14 -08:00
Gregory Kurtzer
8453aecc9d Added delete CLI templates to node and group 2020-11-21 01:55:43 -08:00