diff --git a/.goreleaser.yaml b/.goreleaser.yaml index d8552b6..bafc299 100644 --- a/.goreleaser.yaml +++ b/.goreleaser.yaml @@ -14,15 +14,15 @@ builds: # export GO_VERSION=$(go version | awk '{print $3}') # export BUILD_USER=$(whoami) ldflags: - - "-X github.com/OpenCHAMI/magellan/internal/version.GitCommit={{ .Commit }} \ - -X github.com/OpenCHAMI/magellan/internal/version.BuildTime={{ .Timestamp }} \ - -X github.com/OpenCHAMI/magellan/internal/version.Version={{ .Version }} \ - -X github.com/OpenCHAMI/magellan/internal/version.GitBranch={{ .Branch }} \ - -X github.com/OpenCHAMI/magellan/internal/version.GitTag={{ .Tag }} \ - -X github.com/OpenCHAMI/magellan/internal/version.GitState={{ .Env.GIT_STATE }} \ - -X github.com/OpenCHAMI/magellan/internal/version.BuildHost={{ .Env.BUILD_HOST }} \ - -X github.com/OpenCHAMI/magellan/internal/version.GoVersion={{ .Env.GO_VERSION }} \ - -X github.com/OpenCHAMI/magellan/internal/version.BuildUser={{ .Env.BUILD_USER }} " + - "-X github.com/davidallendj/magellan/internal/version.GitCommit={{ .Commit }} \ + -X github.com/davidallendj/magellan/internal/version.BuildTime={{ .Timestamp }} \ + -X github.com/davidallendj/magellan/internal/version.Version={{ .Version }} \ + -X github.com/davidallendj/magellan/internal/version.GitBranch={{ .Branch }} \ + -X github.com/davidallendj/magellan/internal/version.GitTag={{ .Tag }} \ + -X github.com/davidallendj/magellan/internal/version.GitState={{ .Env.GIT_STATE }} \ + -X github.com/davidallendj/magellan/internal/version.BuildHost={{ .Env.BUILD_HOST }} \ + -X github.com/davidallendj/magellan/internal/version.GoVersion={{ .Env.GO_VERSION }} \ + -X github.com/davidallendj/magellan/internal/version.BuildUser={{ .Env.BUILD_USER }} " tags: - version goos: diff --git a/CHANGELOG.md b/CHANGELOG.md index a6a8e92..bb3abf0 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -271,7 +271,7 @@ Tidied up CLI flag names * Ability to update firmware * Refactored connection handling for faster scanning - * Updated to reflect home at github.com/OpenCHAMI + * Updated to reflect home at github.com/davidallendj * Updated to reflect ghcr.io as container home ## [Unreleased] diff --git a/Makefile b/Makefile index 8b5f3cb..5495893 100644 --- a/Makefile +++ b/Makefile @@ -100,9 +100,9 @@ diff: ## git diff .PHONY: docs docs: ## go docs $(call print-target) - go doc github.com/OpenCHAMI/magellan/cmd - go doc github.com/OpenCHAMI/magellan/internal - go doc github.com/OpenCHAMI/magellan/pkg/crawler + go doc github.com/davidallendj/magellan/cmd + go doc github.com/davidallendj/magellan/internal + go doc github.com/davidallendj/magellan/pkg/crawler .PHONY: emulator emulator: diff --git a/README.md b/README.md index 6cb34be..bcbc566 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,6 @@ -# OpenCHAMI Magellan +# Magellan -The `magellan` CLI tool is a Redfish-based, board management controller (BMC) discovery tool designed to scan networks and is written in Go. The tool collects information from BMC nodes using the provided Redfish RESTful API with [`gofish`](https://github.com/stmcginnis/gofish) and loads the queried data into an [SMD](https://github.com/OpenCHAMI/smd/tree/master) instance. The tool strives to be more flexible by implementing multiple methods of discovery to work for a wider range of systems (WIP) and is capable of using independently of other tools or services. +The `magellan` CLI tool is a Redfish-based, board management controller (BMC) discovery tool designed to scan networks and is written in Go. The tool collects information from BMC nodes using the provided Redfish RESTful API with [`gofish`](https://github.com/stmcginnis/gofish) and loads the queried data into an [SMD](https://github.com/davidallendj/smd/tree/master) instance. The tool strives to be more flexible by implementing multiple methods of discovery to work for a wider range of systems (WIP) and is capable of using independently of other tools or services. **Note: `magellan` v0.1.0 is incompatible with SMD v2.15.3 and earlier.** @@ -25,7 +25,7 @@ See the [TODO](#todo) section for a list of soon-ish goals planned. The `magellan` tool can be built to run on bare metal. Install the required Go tools, clone the repo, and then build the binary in the root directory with the following: ```bash -git clone https://github.com/OpenCHAMI/magellan +git clone https://github.com/davidallendj/magellan cd magellan go mod tidy && go build ``` @@ -58,10 +58,10 @@ This might take some time to complete initially because of the `go-sqlite3` driv ### Docker -The tool can also run using Docker. To build the Docker container, run `docker build -t magellan:testing .` in the project's directory. This is useful if you to run `magellan` on a different system through Docker desktop without having to install and build with Go (or if you can't do so for some reason). [Prebuilt images](https://github.com/OpenCHAMI/magellan/pkgs/container/magellan) are available as well on `ghcr`. Images can be pulled directly from the repository: +The tool can also run using Docker. To build the Docker container, run `docker build -t magellan:testing .` in the project's directory. This is useful if you to run `magellan` on a different system through Docker desktop without having to install and build with Go (or if you can't do so for some reason). [Prebuilt images](https://github.com/davidallendj/magellan/pkgs/container/magellan) are available as well on `ghcr`. Images can be pulled directly from the repository: ```bash -docker pull ghcr.io/openchami/magellan:latest +docker pull ghcr.io/davidallendj/magellan:latest ``` See the ["Running with Docker"](#running-with-docker) section below about running with the Docker container. @@ -195,7 +195,7 @@ watch -n 1 "./magellan update 172.16.0.110 --status --username $USERNAME --passw ### Getting an Access Token (WIP) -The `magellan` tool has a `login` subcommand that works with the [`opaal`](https://github.com/OpenCHAMI/opaal) service to obtain a token needed to access the SMD service. If the SMD instance requires authentication, set the `ACCESS_TOKEN` environment variable to have `magellan` include it in the header for HTTP requests to SMD. +The `magellan` tool has a `login` subcommand that works with the [`opaal`](https://github.com/davidallendj/opaal) service to obtain a token needed to access the SMD service. If the SMD instance requires authentication, set the `ACCESS_TOKEN` environment variable to have `magellan` include it in the header for HTTP requests to SMD. ```bash # must have a running OPAAL instance @@ -205,7 +205,7 @@ The `magellan` tool has a `login` subcommand that works with the [`opaal`](https export ACCESS_TOKEN=eyJhbGciOiJIUzI1NiIs... ``` -Alternatively, if you are running the OpenCHAMI quickstart in the [deployment recipes](https://github.com/OpenCHAMI/deployment-recipes), you can run the provided script to generate a token and set the environment variable that way. +Alternatively, if you are running the OpenCHAMI quickstart in the [deployment recipes](https://github.com/davidallendj/deployment-recipes), you can run the provided script to generate a token and set the environment variable that way. ```bash quickstart_dir=path/to/deployment/recipes/quickstart @@ -218,8 +218,7 @@ export ACCESS_TOKEN=$(gen_access_token) The `magellan` tool can be ran in a Docker container after pulling the latest image: ```bash -docker pull ghcr.io/openchami/magellan:latest - +docker pull ghcr.io/davidallendj/magellan:latest ``` Then, run either with the helper script found in `bin/magellan.sh` or the binary in the container: @@ -250,7 +249,7 @@ In summary, `magellan` needs at minimum the following configured to work on each ## TODO -See the [issue list](https://github.com/OpenCHAMI/magellan/issues) for plans for `magellan`. Here is a list of other features left to add, fix, or do (and some ideas!): +See the [issue list](https://github.com/davidallendj/magellan/issues) for plans for `magellan`. Here is a list of other features left to add, fix, or do (and some ideas!): * [X] Confirm loading different components into SMD * [X] Add ability to set subnet mask for scanning diff --git a/cmd/collect.go b/cmd/collect.go index 1f3288a..ed33dd4 100644 --- a/cmd/collect.go +++ b/cmd/collect.go @@ -4,11 +4,11 @@ import ( "fmt" "os/user" - magellan "github.com/OpenCHAMI/magellan/internal" - "github.com/OpenCHAMI/magellan/internal/cache/sqlite" - urlx "github.com/OpenCHAMI/magellan/internal/url" - "github.com/OpenCHAMI/magellan/pkg/auth" "github.com/cznic/mathutil" + magellan "github.com/davidallendj/magellan/internal" + "github.com/davidallendj/magellan/internal/cache/sqlite" + urlx "github.com/davidallendj/magellan/internal/url" + "github.com/davidallendj/magellan/pkg/auth" "github.com/rs/zerolog/log" "github.com/spf13/cobra" "github.com/spf13/viper" diff --git a/cmd/crawl.go b/cmd/crawl.go index 2611ed3..f6ee9a9 100644 --- a/cmd/crawl.go +++ b/cmd/crawl.go @@ -5,8 +5,8 @@ import ( "fmt" "log" - urlx "github.com/OpenCHAMI/magellan/internal/url" - "github.com/OpenCHAMI/magellan/pkg/crawler" + urlx "github.com/davidallendj/magellan/internal/url" + "github.com/davidallendj/magellan/pkg/crawler" "github.com/spf13/cobra" "github.com/spf13/viper" ) diff --git a/cmd/list.go b/cmd/list.go index e09299f..9fc81cd 100644 --- a/cmd/list.go +++ b/cmd/list.go @@ -6,7 +6,7 @@ import ( "strings" "time" - "github.com/OpenCHAMI/magellan/internal/cache/sqlite" + "github.com/davidallendj/magellan/internal/cache/sqlite" "github.com/rs/zerolog/log" "github.com/spf13/cobra" diff --git a/cmd/login.go b/cmd/login.go index 47aec06..5811d9b 100644 --- a/cmd/login.go +++ b/cmd/login.go @@ -6,8 +6,8 @@ import ( "net/http" "os" - magellan "github.com/OpenCHAMI/magellan/internal" - "github.com/OpenCHAMI/magellan/pkg/auth" + magellan "github.com/davidallendj/magellan/internal" + "github.com/davidallendj/magellan/pkg/auth" "github.com/lestrrat-go/jwx/jwt" "github.com/rs/zerolog/log" "github.com/spf13/cobra" diff --git a/cmd/root.go b/cmd/root.go index 3b0d4f0..778e37f 100644 --- a/cmd/root.go +++ b/cmd/root.go @@ -20,7 +20,7 @@ import ( "os" "os/user" - magellan "github.com/OpenCHAMI/magellan/internal" + magellan "github.com/davidallendj/magellan/internal" "github.com/rs/zerolog/log" "github.com/spf13/cobra" "github.com/spf13/viper" diff --git a/cmd/scan.go b/cmd/scan.go index fedc691..70b636c 100644 --- a/cmd/scan.go +++ b/cmd/scan.go @@ -7,12 +7,12 @@ import ( "os" "path" - magellan "github.com/OpenCHAMI/magellan/internal" - "github.com/OpenCHAMI/magellan/internal/cache/sqlite" + magellan "github.com/davidallendj/magellan/internal" + "github.com/davidallendj/magellan/internal/cache/sqlite" "github.com/rs/zerolog/log" - urlx "github.com/OpenCHAMI/magellan/internal/url" "github.com/cznic/mathutil" + urlx "github.com/davidallendj/magellan/internal/url" "github.com/spf13/cobra" "github.com/spf13/viper" ) diff --git a/cmd/update.go b/cmd/update.go index d5f9a50..57f99b8 100644 --- a/cmd/update.go +++ b/cmd/update.go @@ -4,7 +4,7 @@ import ( "os" "strings" - magellan "github.com/OpenCHAMI/magellan/internal" + magellan "github.com/davidallendj/magellan/internal" "github.com/rs/zerolog/log" "github.com/spf13/cobra" "github.com/spf13/viper" diff --git a/cmd/version.go b/cmd/version.go index 87b7596..921ae81 100644 --- a/cmd/version.go +++ b/cmd/version.go @@ -1,7 +1,7 @@ package cmd import ( - "github.com/OpenCHAMI/magellan/internal/version" + "github.com/davidallendj/magellan/internal/version" "github.com/spf13/cobra" ) diff --git a/go.mod b/go.mod index e153625..1a2e948 100644 --- a/go.mod +++ b/go.mod @@ -1,4 +1,4 @@ -module github.com/OpenCHAMI/magellan +module github.com/davidallendj/magellan go 1.21 diff --git a/internal/cache/sqlite/sqlite.go b/internal/cache/sqlite/sqlite.go index 6bceab4..fa0ae0b 100644 --- a/internal/cache/sqlite/sqlite.go +++ b/internal/cache/sqlite/sqlite.go @@ -4,8 +4,8 @@ import ( "fmt" "strings" - magellan "github.com/OpenCHAMI/magellan/internal" - "github.com/OpenCHAMI/magellan/internal/util" + magellan "github.com/davidallendj/magellan/internal" + "github.com/davidallendj/magellan/internal/util" "github.com/jmoiron/sqlx" ) diff --git a/internal/collect.go b/internal/collect.go index e52bc60..2f2c863 100644 --- a/internal/collect.go +++ b/internal/collect.go @@ -10,13 +10,13 @@ import ( "net/http" "os" "path" - "strings" "path/filepath" + "strings" "sync" "time" - "github.com/OpenCHAMI/magellan/pkg/client" - "github.com/OpenCHAMI/magellan/pkg/crawler" + "github.com/davidallendj/magellan/pkg/client" + "github.com/davidallendj/magellan/pkg/crawler" "github.com/rs/zerolog/log" diff --git a/internal/config.go b/internal/config.go index 4059269..ab26dcc 100644 --- a/internal/config.go +++ b/internal/config.go @@ -3,7 +3,7 @@ package magellan import ( "fmt" - "github.com/OpenCHAMI/magellan/internal/util" + "github.com/davidallendj/magellan/internal/util" "github.com/spf13/viper" ) diff --git a/internal/scan.go b/internal/scan.go index 1dd99a8..99b4904 100644 --- a/internal/scan.go +++ b/internal/scan.go @@ -10,8 +10,8 @@ import ( "sync" "time" - urlx "github.com/OpenCHAMI/magellan/internal/url" - "github.com/OpenCHAMI/magellan/pkg/client" + urlx "github.com/davidallendj/magellan/internal/url" + "github.com/davidallendj/magellan/pkg/client" "github.com/rs/zerolog/log" ) diff --git a/internal/update.go b/internal/update.go index 9191818..464b0b9 100644 --- a/internal/update.go +++ b/internal/update.go @@ -6,7 +6,7 @@ import ( "net/http" "net/url" - "github.com/OpenCHAMI/magellan/pkg/client" + "github.com/davidallendj/magellan/pkg/client" ) type UpdateParams struct { diff --git a/internal/version/version.go b/internal/version/version.go index 7d9d231..b7dae64 100644 --- a/internal/version/version.go +++ b/internal/version/version.go @@ -5,40 +5,40 @@ import ( ) // GitCommit stores the latest Git commit hash. -// Set via -ldflags "-X github.com/OpenCHAMI/magellan/internal/version.GitCommit=$(git rev-parse HEAD)" +// Set via -ldflags "-X github.com/davidallendj/magellan/internal/version.GitCommit=$(git rev-parse HEAD)" var GitCommit string // BuildTime stores the build timestamp in UTC. -// Set via -ldflags "-X github.com/OpenCHAMI/magellan/internal/version.BuildTime=$(date -u +%Y-%m-%dT%H:%M:%SZ)" +// Set via -ldflags "-X github.com/davidallendj/magellan/internal/version.BuildTime=$(date -u +%Y-%m-%dT%H:%M:%SZ)" var BuildTime string // Version indicates the version of the binary, such as a release number or semantic version. -// Set via -ldflags "-X github.com/OpenCHAMI/magellan/internal/version.Version=v1.0.0" +// Set via -ldflags "-X github.com/davidallendj/magellan/internal/version.Version=v1.0.0" var Version string // GitBranch holds the name of the Git branch from which the build was created. -// Set via -ldflags "-X github.com/OpenCHAMI/magellan/internal/version.GitBranch=$(git rev-parse --abbrev-ref HEAD)" +// Set via -ldflags "-X github.com/davidallendj/magellan/internal/version.GitBranch=$(git rev-parse --abbrev-ref HEAD)" var GitBranch string // GitTag represents the most recent Git tag at build time, if any. -// Set via -ldflags "-X github.com/OpenCHAMI/magellan/internal/version.GitTag=$(git describe --tags --abbrev=0)" +// Set via -ldflags "-X github.com/davidallendj/magellan/internal/version.GitTag=$(git describe --tags --abbrev=0)" var GitTag string // GitState indicates whether the working directory was "clean" or "dirty" (i.e., with uncommitted changes). -// Set via -ldflags "-X github.com/OpenCHAMI/magellan/internal/version.GitState=$(if git diff-index --quiet HEAD --; then echo 'clean'; else echo 'dirty'; fi)" +// Set via -ldflags "-X github.com/davidallendj/magellan/internal/version.GitState=$(if git diff-index --quiet HEAD --; then echo 'clean'; else echo 'dirty'; fi)" var GitState string // BuildHost stores the hostname of the machine where the binary was built. -// Set via -ldflags "-X github.com/OpenCHAMI/magellan/internal/version.BuildHost=$(hostname)" +// Set via -ldflags "-X github.com/davidallendj/magellan/internal/version.BuildHost=$(hostname)" var BuildHost string // GoVersion captures the Go version used to build the binary. // Typically, this can be obtained automatically with runtime.Version(), but you can set it manually. -// Set via -ldflags "-X github.com/OpenCHAMI/magellan/internal/version.GoVersion=$(go version | awk '{print $3}')" +// Set via -ldflags "-X github.com/davidallendj/magellan/internal/version.GoVersion=$(go version | awk '{print $3}')" var GoVersion string // BuildUser is the username of the person or system that initiated the build process. -// Set via -ldflags "-X github.com/OpenCHAMI/magellan/internal/version.BuildUser=$(whoami)" +// Set via -ldflags "-X github.com/davidallendj/magellan/internal/version.BuildUser=$(whoami)" var BuildUser string // PrintVersionInfo outputs all versioning information for troubleshooting or version checks. diff --git a/main.go b/main.go index ebe2d95..f0e9e5d 100644 --- a/main.go +++ b/main.go @@ -1,7 +1,7 @@ package main import ( - "github.com/OpenCHAMI/magellan/cmd" + "github.com/davidallendj/magellan/cmd" ) func main() { diff --git a/pkg/client/smd.go b/pkg/client/smd.go index 499a72c..4551245 100644 --- a/pkg/client/smd.go +++ b/pkg/client/smd.go @@ -1,8 +1,8 @@ package client // See ref for API docs: -// https://github.com/OpenCHAMI/hms-smd/blob/master/docs/examples.adoc -// https://github.com/OpenCHAMI/hms-smd +// https://github.com/davidallendj/hms-smd/blob/master/docs/examples.adoc +// https://github.com/davidallendj/hms-smd import ( "fmt" "net/http" diff --git a/tests/api_test.go b/tests/api_test.go index e823bfa..d46a312 100644 --- a/tests/api_test.go +++ b/tests/api_test.go @@ -22,9 +22,9 @@ import ( "flag" - magellan "github.com/OpenCHAMI/magellan/internal" - "github.com/OpenCHAMI/magellan/internal/util" - "github.com/OpenCHAMI/magellan/pkg/client" + magellan "github.com/davidallendj/magellan/internal" + "github.com/davidallendj/magellan/internal/util" + "github.com/davidallendj/magellan/pkg/client" "github.com/rs/zerolog/log" ) diff --git a/tests/compatibility_test.go b/tests/compatibility_test.go index ce2e876..c947e17 100644 --- a/tests/compatibility_test.go +++ b/tests/compatibility_test.go @@ -14,8 +14,8 @@ import ( "net/http" "testing" - "github.com/OpenCHAMI/magellan/pkg/client" - "github.com/OpenCHAMI/magellan/pkg/crawler" + "github.com/davidallendj/magellan/pkg/client" + "github.com/davidallendj/magellan/pkg/crawler" ) var (