defenseunicorns / uds-software-factory

🏭 UDS Software Factory Integration / Wayfinding Repo
Apache License 2.0
9 stars 1 forks source link

Document Zarf actions must-haves #70

Open Racer159 opened 3 months ago

Racer159 commented 3 months ago

Describe what should be investigated or refactored

Zarf is looking to refactor / redesign Zarf actions to be simpler and easier to maintain - we need to document our actions must-haves to ensure our needs are still met for our packages (particularly GLR). These needs should be 1) described in plain text and 2) linked to examples of their use.

Links to any relevant code

https://github.com/defenseunicorns/uds-package-gitlab-runner/pull/93/files#diff-330516a8f3fb4c57de1a7928d4955df77c5d0546ab1558525367e8e16fa14d57R31

Additional context

This should just be a quick look through each package we maintain (and some we may want/need to maintain in the future (i.e. Nexus)) and then adding a comment to this issue to pass over to the Zarf team.

Racer159 commented 1 month ago

A decent example for someone who picks this up is:

https://github.com/defenseunicorns/uds-package-sigstore/blob/main/src/dev-openbao/zarf.yaml#L29

or

https://github.com/defenseunicorns/uds-package-gitlab-runner/blob/main/common/zarf.yaml#L22

ericwyles commented 1 month ago

I reviewed the following repos:

Findings.

Wait Commands

First, we have a lot of very similar Wait commands in actions. I'm just summarizing these, a lot of them appear in multiple places but they are just basic built in wait commands. A de-duped summary of these is below and the more interesting stuff follows

Zarf Action: onDeploy.after

Zarf Action: onDeploy.before


More Interesting stuff

uds-package-archivista

Link: https://github.com/defenseunicorns/uds-package-archivista/blob/fa1c7f3f6af38cf0d2871caa23d63e2e79c1dd27/src/dev-secrets/zarf.yaml#L10 Zarf Action: onDeploy.before


uds-package-gitlab

Link: https://github.com/defenseunicorns/uds-package-gitlab/blob/dbd955b9a95a1a25e6f1cd459b8e90f47f677c84/src/dev-secrets/zarf.yaml#L11 Zarf Action: onDeploy.before


uds-package-gitlab-runner

Link: https://github.com/defenseunicorns/uds-package-gitlab-runner/blob/e7c2d33249bd9ba0dd188d53c22ebc4ebcbab966/common/zarf.yaml#L21 Zarf Action: onDeploy.before


uds-package-mattermost

Link: https://github.com/defenseunicorns/uds-package-mattermost/blob/5667b8981e0f7acd9b9c11196ab16b5148a0d29b/plugins/zarf.yaml#L15 Zarf Action: onCreate.before

Link: https://github.com/defenseunicorns/uds-package-mattermost/blob/5667b8981e0f7acd9b9c11196ab16b5148a0d29b/src/dev-secrets/zarf.yaml#L10 Zarf Action: onDeploy.before


uds-package-nexus

Link: https://github.com/defenseunicorns/uds-package-nexus/blob/ba9b59eff006b97e900aa4bbd5cf4105ca87a2c0/zarf.yaml#L53 Zarf Action: onDeploy.before

Link: https://github.com/defenseunicorns/uds-package-nexus/blob/ba9b59eff006b97e900aa4bbd5cf4105ca87a2c0/src/dev-secrets/zarf.yaml#L11 Zarf Action: onDeploy.before


uds-package-postgres-operator

Link: https://github.com/defenseunicorns/uds-package-postgres-operator/blob/ac70cfb85e6c5b4e654d220029dddd2551e82299/common/zarf.yaml#L21 Zarf Action: onDeploy.before


uds-package-sigstore

Link: https://github.com/defenseunicorns/uds-package-sigstore/blob/c124424536d00d46565ace2f077c2c76fde4f9ec/src/dev-openbao/zarf.yaml#L28 Zarf Action: onDeploy.before

Zarf Action: onDeploy.after

Zarf Action: onDeploy.onSuccess and onDeploy.onFailure


uds-package-sonarqube

Link: https://github.com/defenseunicorns/uds-package-sonarqube/blob/cc24c606eb81cbb7782977ac23f41d057a8064cf/common/zarf.yaml#L23 Zarf Action: onCreate.before

Zarf Action: onDeploy.after


uds-package-valkey

Link: https://github.com/defenseunicorns/uds-package-valkey/blob/242e61a2d869c3cd3b8567ba8fb73ff7844287b8/tests/zarf.yaml#L19 Zarf Action: onDeploy.after