Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Zarf dependence on existing StorageClass #1995

Closed
brandtkeller opened this issue Aug 28, 2023 · 2 comments · Fixed by #2124
Closed

Zarf dependence on existing StorageClass #1995

brandtkeller opened this issue Aug 28, 2023 · 2 comments · Fixed by #2124
Labels
enhancement ✨ New feature or request

Comments

@brandtkeller
Copy link
Contributor

Is your feature request related to a problem? Please describe.

Zarf is unable to init against a cluster that does not contain a storageclass by default. RKE2 is a given example that will require deployment of resources to support a storageclass before zarf init will execute successfully.

Fundamentally, zarf should support a pattern (either logically or documented) that allows for the storageclass to be brought with the init package for the registry to use. Assuming the existence of one puts a burden on the true airgap deployment scenario.

Describe the solution you'd like

Given an empty cluster without any storage infrastructure, when zarf init is executed then zarf should allow a storageclass component to be included and used by the registry (Allowing for enhanced deployments of the registry such as HA)

Describe alternatives you've considered

Creation of a custom init package that performs the following:

  • Deploy the zarf-injector
  • Deploy the zarf-seed-registry w/o persistence
  • Deploy the zarf-registry w/o persistence
  • Deploy the zarf-agent
  • Deploy a given storageclass and any required resources
  • Re-deploy the zarf-registry with persistence
  • Seed the registry, agent and storageclass images

Tested the above and currently incurring issues around image push auth. Either due to persistence or credential mis-match perhaps?

Additional context

May be related to #375

@brandtkeller brandtkeller added the enhancement ✨ New feature or request label Aug 28, 2023
@joelcomp1
Copy link

So I have this working locally on a fork using a similar above construct . I added a step to a custom init package that after zarf-seed-registry w/o persistence installs the rancher local path provisioner (if your not using k3s already) and then after thats up re-install zarf-registry with persistence. I ran into this problem all the time on RKE2 as we use Longhorn but that doesn't help us for initial Airgap install. Let me know and I can post / put a pull request in.

@Noxsios
Copy link
Contributor

Noxsios commented Sep 4, 2023

Linking #1998 as this deals with similar StorageClass shenanigans

@Noxsios Noxsios changed the title Zarf dependence on existing storageclass Zarf dependence on existing StorageClass Sep 4, 2023
Racer159 added a commit that referenced this issue Nov 8, 2023
…ed (#2124)

## Description

This PR sets up an empty dir when persistence is disable which is
something needed for the longhorn init package:

https://github.com/defenseunicorns/zarf-init-longhorn

## Related Issue

Fixes #1995

## Type of change

- [ ] Bug fix (non-breaking change which fixes an issue)
- [x] New feature (non-breaking change which adds functionality)
- [ ] Other (security config, docs update, etc)

## Checklist before merging

- [ ] Test, docs, adr added or updated as needed
- [x] [Contributor Guide
Steps](https://github.com/defenseunicorns/zarf/blob/main/CONTRIBUTING.md#developer-workflow)
followed

---------

Co-authored-by: Ben Mountjoy <benmountjoy@gmail.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement ✨ New feature or request
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants