defenseunicorns / uds-package-dubbd

Defense Unicorns Big Bang Distro
Apache License 2.0
24 stars 7 forks source link

The OS is not supported #608

Closed ThomasGLAllen closed 1 year ago

ThomasGLAllen commented 1 year ago

Environment

Device and OS: OpenSuSe App version: Tumbleweed Kubernetes distro being used: N/A Other: wanted to report this as a bug besides an issue with testing. After running the command: zarf package deploy oci://ghcr.io/defenseunicorns/packages/dubbd-k3d:0.11.0-amd64 --set APPROVED_REGISTRIES="ghcr.io/runyontr/ | ghcr.io/defenseunicorns/ | nvcr.io/nvidia/k8s/ | semitechnologies/"

I get the following error:

📦 SET-ZARF-VARS COMPONENT

✔ Completed "Set pvc reclaim policy Zarf variable"
✔ Completed "Set admin domain Zarf variable"

📦 PREFLIGHT COMPONENT

✔ Completed "Checking for kubecontext..."
✔ Completed "Checking if cluster is healthy..."
v1.28.1+k3s1
✔ Completed "Checking cluster version..."
✔ Completed "Checking if zarf has been initialized..."
✔ Completed "Checking if Gitea is runnning..."
✔ Completed "Checking if this is an upgrade..."
✔ Copying 1 files
Server version is supported
✔ Completed "./preflight.sh"
✔ Completed "rm preflight.sh"

📦 LOAD-CERTS COMPONENT

✔ Copying 2 files
✔ Completed "Read cert file into values"
✔ Completed "Read key file into values"
✔ Completed "Read admin cert file into values"
✔ Completed "Read admin key file into values"
✔ Completed "rm bigbang.dev.cert"
✔ Completed "rm bigbang.dev.key"

📦 GENERATE-CREDENTIALS COMPONENT

✔ Completed "if [ ${ZARF_VAR_IS_UPGRADE} = true ]; then; if ! ./zarf..."
✔ Completed "if [ ${ZARF_VAR_IS_UPGRADE} = true ]; then; if ! ./zarf..."
✔ Completed "if [ ${ZARF_VAR_IS_UPGRADE} = true ]; then; if ! ./zarf..."
✔ Loading the Zarf State from the Kubernetes cluster
✔ Starting helm chart generation admin-interface-creds
✔ Processing helm chart raw-dubbd-k3d-generate-credentials-admin-interface-creds:0.1.1698640525 from Zarf-generated helm chart

📦 DOWNLOAD-FLUX COMPONENT
✔ Copying 7 files
✔ Completed "Clean up previous flux install"
The OS is not supported
ERROR: Failed to deploy package: unable to deploy all components in this Zarf Package: unable to deploy
component download-flux: unable to run component after action: command "Extract flux binary" timed out after 0 seconds

Steps to reproduce

N/A

Expected result

N/A

Actual Result

N/A

Visual Proof (screenshots, videos, text, etc)

N/A

Severity/Priority

High

Additional Context

Add any other context or screenshots about the technical debt here.

Racer159 commented 1 year ago

That error is actually not from Zarf and is an artifact of that package. Going to shift this over to that repository so that that team can look more specifically at this issue but here are the offending lines: https://github.com/defenseunicorns/uds-package-dubbd/blob/main/defense-unicorns-distro/scripts/extract_flux.sh#L4

Likely Tumbleweed isn't reporing $OSTYPE as linux-gnu and that script falls through.

MxNxPx commented 1 year ago

thanks @Racer159 for shifting this issue and @ThomasGLAllen for reporting it!

it would appear that Tumbleweed reports OSTYPE as linux when doing a quick test.

so i propose we update the line below from: https://github.com/defenseunicorns/uds-package-dubbd/blob/dad8e5c5049675735831fc7288eae8f67f81b7ff/defense-unicorns-distro/scripts/extract_flux.sh#L6

to: elif [[ "$OSTYPE" == "linux"* ]]; then

if there are no objections, we will open a PR with this chage. thanks again!

ThomasGLAllen commented 1 year ago

Thanks for the help, yes, when setting the environment variable OSTYPE to linux-gnu, the script works. openSUSE reports the default OSTYPE as just linux.

I also encountered another minor issue, which I assume is related to the script, where if the script errors out (such as the OS type error causing a nonzero exit code), the /tmp folder does not clear, so my tmp directory, which is a separate partition, was getting full.

Thanks again.