Skip to content

Add the repository furniture the other marstack projects carry - #4

Merged
umars28 merged 1 commit into
mainfrom
chore/repo-furniture
Sep 7, 2026
Merged

Add the repository furniture the other marstack projects carry#4
umars28 merged 1 commit into
mainfrom
chore/repo-furniture

Conversation

@umars28

@umars28 umars28 commented Sep 7, 2026

Copy link
Copy Markdown
Member

marstack-cloud, -secrets and -access each ship a changelog, contributing guide, security policy, code of conduct, owners file, Makefile and release workflow. This repository had none, which made a project with 128 integration assertions and a published usage guide read as half-finished.

CODE_OF_CONDUCT.md and CODEOWNERS are copied verbatim — organisation policy, not repository content, and should not drift.

The rest is adapted, because the Go pattern does not carry over:

File Adaptation
Makefile drives cargo; adds integration, validation, bench for the suites needing root. No site target — the other repos generate meridian.css from internal/console/assets, and a CLI with no console has to vendor it
release.yml matrix of ubuntu-24.04 and ubuntu-24.04-arm instead of cross-compiling, since mars links libseccomp and arm64 runners are free for public repos. Guard job still refuses a tag not on main; notes still come from the changelog section named after the tag
CHANGELOG.md everything under Unreleased, because nothing is tagged. Records the three bugs found this week next to the features
SECURITY.md no supported versions, not production software, where the privilege actually is, and what is not covered

Verified in the dev VM: all three workflows parse, make check runs fmt + clippy + 106 unit tests, make dist produces an archive and SHA256SUMS, every relative link resolves, and ubuntu-24.04-arm is confirmed generally available and free for public repositories.

marstack-cloud, -secrets and -access each ship a changelog, contributing
guide, security policy, code of conduct, owners file, Makefile and release
workflow. This repository had none of them, which made a project with 128
integration assertions and a published usage guide read as half-finished.

CODE_OF_CONDUCT.md and CODEOWNERS are copied verbatim, since they are
organisation policy rather than repository content and should not drift.

The rest is adapted rather than translated, because the Go pattern does not
carry over:

- The Makefile drives cargo, and adds integration, validation and bench
  targets for the three suites that need root. There is no `site` target: the
  other repos generate meridian.css from internal/console/assets, and a CLI
  with no console has to vendor it.
- release.yml builds on a matrix of ubuntu-24.04 and ubuntu-24.04-arm rather
  than cross-compiling. mars links libseccomp, so a cross build would mean
  cross-linking a C library for no reason when arm64 runners are free for
  public repositories. A guard job still refuses a tag that is not on main,
  and the notes still come from the changelog section named after the tag.
- CHANGELOG.md puts everything under Unreleased, because nothing is tagged
  yet. It records the three bugs found this week alongside the features.
- SECURITY.md states plainly that there are no supported versions and that
  this is not production software, then says where the privilege actually is
  and what is not covered — rootless, SELinux and AppArmor labels, CNI, and
  the limits of the attack surface figures.

Verified in the dev VM: all three workflows parse, `make check` runs fmt,
clippy and 106 unit tests, `make dist` produces an archive and SHA256SUMS, and
every relative link in the new files resolves.
@umars28
umars28 merged commit aa0290a into main Sep 7, 2026
3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant