Skip to content

Commit d7cfabb

Browse files
Merge branch 'main' into rbac/add_schema_docs
2 parents 848ea56 + 44964db commit d7cfabb

File tree

1,123 files changed

+3416
-3805
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

1,123 files changed

+3416
-3805
lines changed

.github/CODEOWNERS

Lines changed: 17 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -1,41 +1,41 @@
11
* @DamjanBecirovic @lucaspin @skipi
22
/artifacthub/ @lucaspin @dexyk @DamjanBecirovic
3-
/auth/ @VeljkoMaksimovic @lucaspin @forestileao
4-
/badge/ @VeljkoMaksimovic @skipi @forestileao
5-
/bootstrapper/ @VeljkoMaksimovic @lucaspin @forestileao
3+
/auth/ @hamir-suspect @lucaspin @forestileao
4+
/badge/ @hamir-suspect @skipi @forestileao
5+
/bootstrapper/ @skipi @lucaspin @forestileao
66
/branch_hub/ @skipi @lucaspin @forestileao
77
/dashboardhub/ @hamir-suspect @skipi @forestileao
8-
/docs/ @TomFern @skipi @hamir-suspect @dexyk @VeljkoMaksimovic @DamjanBecirovic
8+
/docs/ @TomFern @skipi @hamir-suspect @dexyk @DamjanBecirovic
99
/ee/audit/ @hamir-suspect @dexyk @lucaspin
1010
/ee/gofer/ @DamjanBecirovic @dexyk @lucaspin
11-
/ee/pre_flight_checks/ @DamjanBecirovic @VeljkoMaksimovic @skipi
12-
/ee/rbac/ @VeljkoMaksimovic @forestileao @lucaspin
11+
/ee/pre_flight_checks/ @DamjanBecirovic @dexyk @skipi
12+
/ee/rbac/ @dexyk @forestileao @lucaspin
1313
/ee/velocity/ @skipi @dexyk @lucaspin
14-
/encryptor/ @VeljkoMaksimovic @lucaspin @forestileao
15-
/ephemeral_environment/ @VeljkoMaksimovic @lucaspin @hamir-suspect
14+
/encryptor/ @DamjanBecirovic @lucaspin @forestileao
15+
/ephemeral_environment/ @skipi @lucaspin @hamir-suspect
1616
/feature_provider/ @skipi @hamir-suspect @dexyk
17-
/front/ @hamir-suspect @skipi @VeljkoMaksimovic @forestileao
18-
/github_hooks/ @VeljkoMaksimovic @skipi @darkofabijan
19-
/github_notifier/ @VeljkoMaksimovic @hamir-suspect @skipi
20-
/guard/ @VeljkoMaksimovic @forestileao @lucaspin
17+
/front/ @hamir-suspect @skipi @DamjanBecirovic @forestileao
18+
/github_hooks/ @hamir-suspect @skipi @darkofabijan
19+
/github_notifier/ @forestileao @hamir-suspect @skipi
20+
/guard/ @dexyk @forestileao @lucaspin
2121
/helm-chart/ @lucaspin @dexyk @DamjanBecirovic
2222
/hooks_processor/ @hamir-suspect @DamjanBecirovic @forestileao
2323
/hooks_receiver/ @hamir-suspect @DamjanBecirovic @forestileao
24-
/keycloak/ @skipi @hamir-suspect @VeljkoMaksimovic
24+
/keycloak/ @skipi @hamir-suspect
2525
/loghub2/ @lucaspin @hamir-suspect @DamjanBecirovic
26-
/notifications/ @hamir-suspect @VeljkoMaksimovic @DamjanBecirovic
26+
/notifications/ @hamir-suspect @dexyk @DamjanBecirovic
2727
/periodic_scheduler/ @DamjanBecirovic @dexyk @skipi
2828
/plumber/ @DamjanBecirovic @dexyk @skipi
2929
/projecthub-rest-api/ @hamir-suspect @lucaspin @forestileao
3030
/projecthub/ @skipi @hamir-suspect @forestileao
3131
/public-api-gateway/ @hamir-suspect @lucaspin
3232
/public-api/v2 @hamir-suspect @DamjanBecirovic @dexyk
3333
/public-api/v1alpha @hamir-suspect @DamjanBecirovic @dexyk
34-
/rbac/ @VeljkoMaksimovic @forestileao @lucaspin
34+
/rbac/ @skipi @forestileao @lucaspin
3535
/repohub/ @skipi @lucaspin @DamjanBecirovic
3636
/repository_hub/ @skipi @hamir-suspect @forestileao
3737
/scouter/ @skipi @hamir-suspect @forestileao
38-
/secrethub/ @hamir-suspect @lucaspin @VeljkoMaksimovic
39-
/self_hosted_hub/ @lucaspin @dexyk @VeljkoMaksimovic
38+
/secrethub/ @hamir-suspect @lucaspin @skipi
39+
/self_hosted_hub/ @lucaspin @dexyk @skipi
4040
/statsd/ @hamir-suspect @dexyk @DamjanBecirovic
4141
/zebra/ @lucaspin @hamir-suspect @DamjanBecirovic

docs/AGENTS.md

Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
# Repository Guidelines
2+
3+
## Project Structure & Module Organization
4+
5+
The docs site runs on Docusaurus. Author new or updated guides in `docs/` and keep contributor-facing notes in `docs-contributing/`. Historical content lives in `versioned_docs/`, paired with `versioned_sidebars/` for navigation metadata. Custom React or styling tweaks reside in `src/` (`components/`, `pages/`, `theme/`), while shared assets such as images, downloads, and redirects belong under `static/`. Park work-in-progress material inside `docs-drafts/` to prevent accidental publication.
6+
7+
## Build, Test, and Development Commands
8+
9+
Run `npm start` (or `make npm.dev`) to spin up the live-reloading docs server on `localhost:3000`. `npm run build` (mirrored by `make npm.build`) generates the production-ready static bundle in `build/` and surfaces MDX or sidebar errors. Enforce content quality with `npm run lint` or `make npm.lint`, which executes `markdownlint-cli2` across `docs/**` and `versioned_docs/**`.
10+
11+
```bash
12+
npm run lint
13+
```
14+
15+
Ensure `npm run build` exits without error before committing any changes.
16+
17+
## Coding Style & Naming Conventions
18+
19+
Use YAML front matter with at least `title` and `description` (and `slug` or `sidebar_position` when needed) to keep navigation orderly. Write concise Markdown/MDX in sentence case headings, wrap prose near 100 characters to ease reviews, and prefer lists or tables for procedural steps. Tag code fences with a language hint and surface commands with shell blocks. Name reusable MDX components in PascalCase and place them under `src/components/`, and store shared assets in kebab-case filenames (for example `rolling-deploy.png`).
20+
21+
Further coding and style guidelines are stated on `docs-contributing/STYLE_GUIDE.md`
22+
23+
## Testing Guidelines
24+
25+
Run `npm run lint` before pushing; suppress rules only when `.markdownlint.json` documents the exception. Follow with `npm run build` to catch broken imports, invalid images, or sidebar regressions. For parity with containerized checks, `make test` executes the nginx configuration validation used in CI.
26+
27+
## Commit & Pull Request Guidelines
28+
29+
Use the Conventional Commits style seen in history—`docs(scope): concise summary`—to keep automation predictable. Reference issues or Linear tickets in the body, describe the user-facing impact, and call out the docs sections affected. Include screenshots or GIFs when the UI or illustrations change, and add deploy preview URLs so reviewers can validate navigation, search, and syntax highlighting interactively.
30+
31+
## Versioning
32+
33+
The versioning schema for new releases in the `versioned_docs` and `versioned_sidebars` as detailed in the `docs-contributing/VERSIONING.md`.

docs/DOCUMENTATION.md

Lines changed: 50 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,50 @@
1+
# Docs Workspace Architecture
2+
3+
## Tech Stack Snapshot
4+
5+
- Docusaurus 3 (`@docusaurus/core` 3.9.x) with the classic preset, Algolia search, Mermaid diagrams, and `docusaurus-theme-openapi-docs`.
6+
- React 18 components backed by Prism for code highlighting (GitHub/Dracula themes plus Elixir, Java, Groovy extra languages).
7+
- Builds require Node ≥18 and rely on `markdownlint-cli2` for Markdown quality checks.
8+
- The Dockerfile performs a multi-stage build: Node-based asset compilation followed by an Nginx runtime image that serves `/usr/share/nginx/html`.
9+
10+
## Directory Layout & Ownership
11+
12+
- `docs/`: Active Cloud (current) documentation. Keep front matter (`title`, optional `slug`, `sidebar_position`) with sentence-case headings. Subfolders mirror sidebar categories (see `sidebars.js`).
13+
- `versioned_docs/`: Frozen snapshots per edition (`version-CE`, `version-EE`, etc.). Generated via `npm run docusaurus docs:version <label>` and tracked in `versions.json`, `versioned_sidebars/` and `docusaurus.config.js`.
14+
- `docs-contributing/`: Meta documentation—contribution flow, reviewing steps, style guide, UI inventory. Reference these before editing content.
15+
- `docs-drafts/`: Sandbox for WIP material; not routed to production. Move items into `docs/` or versioned folders once approved.
16+
- `src/`: React/MDX enhancements. `components/` stores reusable blocks, `theme/` overrides Docusaurus theme components, `pages/` hosts custom routes, and `css/` contains `custom.css`.
17+
- `static/`: Assets copied verbatim to the output (images, downloads, redirects). Use kebab-case filenames.
18+
- `default.conf`: Nginx config used both locally (Docker) and in deploy artifacts to mount the generated static site.
19+
20+
## Content & Navigation Workflow
21+
22+
1. Draft in `docs-drafts/` or an edition-specific folder with required front matter.
23+
2. Wire navigation via `sidebars.js` for curated sections or rely on autogenerated categories (see existing patterns).
24+
3. Re-run `npm run lint` to enforce Markdown style; `.markdownlint.json` relaxes line length but keeps other defaults.
25+
4. Execute `npm start` for live preview (`localhost:3000`) and validate links visually.
26+
5. Build with `npm run build` (or `make npm.build`) before hand-off; build throws on broken images/links.
27+
6. For release branches, snapshot content with `npm run docusaurus docs:version <Edition>` and commit the generated folder plus `versions.json`.
28+
29+
## Tooling & Commands
30+
31+
- `npm start` / `make npm.dev`: Dev server with hot reload and local search.
32+
- `npm run build` / `make npm.build`: Production bundle under `build/`.
33+
- `npm run lint` / `make npm.lint`: Runs `markdownlint-cli2` across `docs/**` and `versioned_docs/**`; suppressions must be justified.
34+
- `make test`: Invokes the repo-wide Docker image to validate `nginx -t`, mirroring CI smoke checks.
35+
- `npm run docusaurus ...`: Access the Docusaurus CLI (e.g., `write-heading-ids`, `swizzle` for component overrides).
36+
37+
## Theming, Integrations & Data Sources
38+
39+
- Configured in `docusaurus.config.js`: base URL defaults to `/`, production URL `https://docs.semaphore.io`.
40+
- Editions and labels defined under `presets[0].docs.versions`; the `docsVersionDropdown` in the navbar reads from here.
41+
- OpenAPI integration fetches `https://docs.semaphore.io/v2/api-spec/openapi.yaml` at build time and emits content in `docs/openapi-spec/`; offline builds need the spec cached manually.
42+
- PostHog and Google Analytics tags are wired for production only; no extra steps needed locally.
43+
- Algolia search (index `v2-sxmoon`) is configured but relies on back-end indexing jobs; run `npm run build` to generate crawlable markup.
44+
45+
## Troubleshooting Notes
46+
47+
- Sandbox environments without network access will cause the OpenAPI plugin to fail; temporarily comment the plugin block or pre-populate `docs/openapi-spec/` if necessary.
48+
- If Markdown build errors point to broken images, ensure assets exist under `static/` and are addressed with absolute `/img/...` paths.
49+
- Sidebar mismatches typically stem from identifier changes; keep doc IDs stable or update references in `sidebars.js` and cross-links.
50+
- Remember this docs app lives under `docs/` in the mono-repo; the top-level `Makefile` (included via `include ../Makefile`) may inject additional CI targets—review upstream when debugging pipeline issues.

docs/docs-drafts/README.md

Lines changed: 0 additions & 5 deletions
This file was deleted.

0 commit comments

Comments
 (0)