Implement MIL-006: project license in config.env; AGPL-3.0 default only for a public GitHub project #52

Merged
Tirsvad merged 5 commits from mil-006-license into mil-006-plan 2026-10-07 08:18:48 +02:00
Owner

Implements MIL-006. Based on mil-006-plan (PR #43), so the base is that branch; retarget to main once #43 is merged.

  • PROJECT_LICENSE in config.env: a Gitea license key or none; checked before any request, never asked.
  • Without it, AGPL-3.0 applies only when GitHub is chosen and the project is public; a private project with GitHub gets none.
  • The license is applied on Gitea with or without GitHub, and the server must offer it before anything is created.
  • Plan and summary name the license and where it came from.
  • README and config.env.example document the key.
  • Tests: new tests/test-license.sh; existing tests that expected AGPL-3.0 on a private project now use a public one. Full suite: 985 checks, 0 failed.

Closes #44
Closes #45
Closes #46
Closes #50

Implements MIL-006. Based on `mil-006-plan` (PR #43), so the base is that branch; retarget to `main` once #43 is merged. - `PROJECT_LICENSE` in config.env: a Gitea license key or `none`; checked before any request, never asked. - Without it, AGPL-3.0 applies only when GitHub is chosen and the project is public; a private project with GitHub gets none. - The license is applied on Gitea with or without GitHub, and the server must offer it before anything is created. - Plan and summary name the license and where it came from. - README and config.env.example document the key. - Tests: new tests/test-license.sh; existing tests that expected AGPL-3.0 on a private project now use a public one. Full suite: 985 checks, 0 failed. Closes #44 Closes #45 Closes #46 Closes #50
Tirsvad added 2 commits 2026-10-07 07:28:50 +02:00
- PROJECT_LICENSE (a Gitea license key, or none) is read, checked and never asked
- Without it AGPL-3.0 applies only when GitHub is chosen and the project is public
- The license is applied on Gitea with or without GitHub, and checked against the server first
- Plan and summary name the license and where it came from
- MIL-006 accepted; README and config.env.example document the key
- Tests: new test-license.sh; existing tests use a public project where they expect AGPL-3.0

Task: MIL-006#1
Task: MIL-006#2
Task: MIL-006#3
Task: MIL-006#4
Refs #44
Refs #45
Refs #46
Refs #50
A private project with GitHub no longer gets a license, so only a public one expects it.

Task: MIL-006#4
Refs #50
Tirsvad added 3 commits 2026-10-07 08:17:25 +02:00
- git submodule update --init --recursive after adding or reusing the framework
- Follow links to the script so SCRIPT_DIR and the checkout are the real ones
- config.env and .env: --config/--env, else ./ in the working folder, else the checkout's
- Name the files used; a file from the working folder needs a yes before any request
- MIL-007 accepted; test fixtures for the qc checklists; tests/test-launch.sh

Work in progress: the README section is not written yet, and four tests of
test-launch.sh fail and two shellcheck warnings remain; they are fixed next.

Task: MIL-007#1
Task: MIL-007#2
Refs #47
Refs #48
Refs #51
- README: start from the folder where the project is created, make the script a global command, where config.env and .env are read from and the confirmation
- Tests: qc tests set up the temp directory and force a real failure; the default-files test runs from a folder without files of its own; the link test allows for path aliases; the work directory cleanup deletes links

Task: MIL-007#3
Task: MIL-007#4
Refs #49
Refs #51
Reviewed-on: #53
Tirsvad merged commit 413053c66c into mil-006-plan 2026-10-07 08:18:48 +02:00
Sign in to join this conversation.