diff --git a/.mokogitea/CLAUDE.md b/.mokogit/.mokogitea/CLAUDE.md similarity index 92% rename from .mokogitea/CLAUDE.md rename to .mokogit/.mokogitea/CLAUDE.md index 06e44f5..158e13e 100644 --- a/.mokogitea/CLAUDE.md +++ b/.mokogit/.mokogitea/CLAUDE.md @@ -51,10 +51,10 @@ Client repos (`client-clarksvillefurs`, `client-optainfunding`, etc.) install `t - **Never commit** `.claude/`, `.mcp.json`, `TODO.md`, `*.min.css`/`*.min.js` - **Attribution**: `Authored-by: Moko Consulting` -- **Workflow directory**: `.mokogitea/` (not `.gitea/` or `.github/`) +- **Workflow directory**: `.mokogit/` (not `.gitea/` or `.github/`) - **Minification**: handled at build time (CI) and runtime (MokoMinifyHelper) -- **Wiki**: documentation lives in the MokoGitea wiki, not `docs/` files -- **Standards**: [MokoStandards](https://git.mokoconsulting.tech/MokoConsulting/.mokogitea/wiki) +- **Wiki**: documentation lives in the MokoGIT wiki, not `docs/` files +- **Standards**: [MokoStandards](https://git.mokoconsulting.tech/MokoConsulting/.mokogit/wiki) ## Coding Standards diff --git a/.mokogitea/ISSUE_TEMPLATE/adr.md b/.mokogit/.mokogitea/ISSUE_TEMPLATE/adr.md similarity index 100% rename from .mokogitea/ISSUE_TEMPLATE/adr.md rename to .mokogit/.mokogitea/ISSUE_TEMPLATE/adr.md diff --git a/.mokogitea/ISSUE_TEMPLATE/bug_report.md b/.mokogit/.mokogitea/ISSUE_TEMPLATE/bug_report.md similarity index 100% rename from .mokogitea/ISSUE_TEMPLATE/bug_report.md rename to .mokogit/.mokogitea/ISSUE_TEMPLATE/bug_report.md diff --git a/.mokogitea/ISSUE_TEMPLATE/config.yml b/.mokogit/.mokogitea/ISSUE_TEMPLATE/config.yml similarity index 99% rename from .mokogitea/ISSUE_TEMPLATE/config.yml rename to .mokogit/.mokogitea/ISSUE_TEMPLATE/config.yml index 633177f..1fa45b8 100644 --- a/.mokogitea/ISSUE_TEMPLATE/config.yml +++ b/.mokogit/.mokogitea/ISSUE_TEMPLATE/config.yml @@ -8,7 +8,7 @@ contact_links: url: https://mokoconsulting.tech/ about: Get help or ask questions through our website - name: MokoStandards Documentation - url: https://git.mokoconsulting.tech/MokoConsulting/.mokogitea/wiki + url: https://git.mokoconsulting.tech/MokoConsulting/.mokogit/wiki about: View our coding standards and best practices - name: Report a Security Vulnerability url: https://git.mokoconsulting.tech/mokoconsulting-tech/.github-private/security/advisories/new diff --git a/.mokogitea/ISSUE_TEMPLATE/documentation.md b/.mokogit/.mokogitea/ISSUE_TEMPLATE/documentation.md similarity index 100% rename from .mokogitea/ISSUE_TEMPLATE/documentation.md rename to .mokogit/.mokogitea/ISSUE_TEMPLATE/documentation.md diff --git a/.mokogitea/ISSUE_TEMPLATE/feature_request.md b/.mokogit/.mokogitea/ISSUE_TEMPLATE/feature_request.md similarity index 96% rename from .mokogitea/ISSUE_TEMPLATE/feature_request.md rename to .mokogit/.mokogitea/ISSUE_TEMPLATE/feature_request.md index 984fcbe..6c1bbad 100644 --- a/.mokogitea/ISSUE_TEMPLATE/feature_request.md +++ b/.mokogit/.mokogitea/ISSUE_TEMPLATE/feature_request.md @@ -37,7 +37,7 @@ If you have ideas about how this could be implemented, share them here: Add any other context, mockups, or screenshots about the feature request here. ## Relevant Standards -Does this relate to any standards in [MokoStandards](https://git.mokoconsulting.tech/MokoConsulting/.mokogitea/wiki)? +Does this relate to any standards in [MokoStandards](https://git.mokoconsulting.tech/MokoConsulting/.mokogit/wiki)? - [ ] Accessibility (WCAG 2.1 AA) - [ ] Localization (en_US/en_GB) - [ ] Security best practices diff --git a/.mokogitea/ISSUE_TEMPLATE/joomla_issue.md b/.mokogit/.mokogitea/ISSUE_TEMPLATE/joomla_issue.md similarity index 100% rename from .mokogitea/ISSUE_TEMPLATE/joomla_issue.md rename to .mokogit/.mokogitea/ISSUE_TEMPLATE/joomla_issue.md diff --git a/.mokogitea/ISSUE_TEMPLATE/question.md b/.mokogit/.mokogitea/ISSUE_TEMPLATE/question.md similarity index 100% rename from .mokogitea/ISSUE_TEMPLATE/question.md rename to .mokogit/.mokogitea/ISSUE_TEMPLATE/question.md diff --git a/.mokogitea/ISSUE_TEMPLATE/rfc.md b/.mokogit/.mokogitea/ISSUE_TEMPLATE/rfc.md similarity index 100% rename from .mokogitea/ISSUE_TEMPLATE/rfc.md rename to .mokogit/.mokogitea/ISSUE_TEMPLATE/rfc.md diff --git a/.mokogitea/ISSUE_TEMPLATE/security.md b/.mokogit/.mokogitea/ISSUE_TEMPLATE/security.md similarity index 95% rename from .mokogitea/ISSUE_TEMPLATE/security.md rename to .mokogit/.mokogitea/ISSUE_TEMPLATE/security.md index 1aa208d..782c01f 100644 --- a/.mokogitea/ISSUE_TEMPLATE/security.md +++ b/.mokogit/.mokogitea/ISSUE_TEMPLATE/security.md @@ -35,7 +35,7 @@ Use this template only for: ## Standards Reference -Does this relate to security standards in [MokoStandards](https://git.mokoconsulting.tech/MokoConsulting/.mokogitea/wiki)? +Does this relate to security standards in [MokoStandards](https://git.mokoconsulting.tech/MokoConsulting/.mokogit/wiki)? - [ ] SPDX license identifiers - [ ] Secret management - [ ] Dependency security diff --git a/.mokogitea/ISSUE_TEMPLATE/version.md b/.mokogit/.mokogitea/ISSUE_TEMPLATE/version.md similarity index 100% rename from .mokogitea/ISSUE_TEMPLATE/version.md rename to .mokogit/.mokogitea/ISSUE_TEMPLATE/version.md diff --git a/.mokogitea/ISSUE_TEMPLATE/waas_site_issue.md b/.mokogit/.mokogitea/ISSUE_TEMPLATE/waas_site_issue.md similarity index 100% rename from .mokogitea/ISSUE_TEMPLATE/waas_site_issue.md rename to .mokogit/.mokogitea/ISSUE_TEMPLATE/waas_site_issue.md diff --git a/.mokogitea/branch-protection.yml b/.mokogit/.mokogitea/branch-protection.yml similarity index 94% rename from .mokogitea/branch-protection.yml rename to .mokogit/.mokogitea/branch-protection.yml index 2dff8b9..4af3651 100644 --- a/.mokogitea/branch-protection.yml +++ b/.mokogit/.mokogitea/branch-protection.yml @@ -1,7 +1,7 @@ # Copyright (C) 2026 Moko Consulting # SPDX-License-Identifier: GPL-3.0-or-later # FILE INFORMATION -# DEFGROUP: Gitea.Workflow +# DEFGROUP: Git.Workflow # INGROUP: moko-platform.Automation # REPO: https://git.mokoconsulting.tech/MokoConsulting/moko-platform # PATH: /.gitea/workflows/branch-protection.yml @@ -42,8 +42,8 @@ on: default: '' env: - GITEA_URL: https://git.mokoconsulting.tech - GITEA_ORG: MokoConsulting + GIT_URL: https://git.mokoconsulting.tech + GIT_ORG: MokoConsulting permissions: contents: read @@ -59,10 +59,10 @@ jobs: env: GA_TOKEN: ${{ secrets.GA_TOKEN }} run: | - API="${GITEA_URL}/api/v1" + API="${GIT_URL}/api/v1" # Platform/standards/infra repos to exclude - EXCLUDE="gitea-org-config org-profile gitea-private .mokogitea-private MokoStandards moko-platform MokoTesting" + EXCLUDE="git-org-config org-profile git-private .mokogit-private MokoStandards moko-platform MokoTesting" EXCLUDE="$EXCLUDE MokoStandards-Template-Client MokoStandards-Template-Dolibarr MokoStandards-Template-Generic MokoStandards-Template-Joomla MokoDoliProjTemplate" if [ -n "${{ inputs.repos }}" ]; then @@ -75,7 +75,7 @@ jobs: while true; do BATCH=$(curl -sS \ -H "Authorization: token ${GA_TOKEN}" \ - "${API}/orgs/${GITEA_ORG}/repos?page=${PAGE}&limit=50" \ + "${API}/orgs/${GIT_ORG}/repos?page=${PAGE}&limit=50" \ | jq -r '.[].name // empty') [ -z "$BATCH" ] && break REPOS="$REPOS $BATCH" @@ -108,7 +108,7 @@ jobs: GA_TOKEN: ${{ secrets.GA_TOKEN }} DRY_RUN: ${{ inputs.dry_run || 'false' }} run: | - API="${GITEA_URL}/api/v1" + API="${GIT_URL}/api/v1" REPOS="${{ steps.repos.outputs.repos }}" SUCCESS=0 @@ -215,7 +215,7 @@ jobs: curl -sS -o /dev/null -w "" \ -X DELETE \ -H "Authorization: token ${GA_TOKEN}" \ - "${API}/repos/${GITEA_ORG}/${REPO}/branch_protections/${ENCODED_NAME}" 2>/dev/null || true + "${API}/repos/${GIT_ORG}/${REPO}/branch_protections/${ENCODED_NAME}" 2>/dev/null || true # Create rule RESPONSE=$(curl -sS -w "\n%{http_code}" \ @@ -223,7 +223,7 @@ jobs: -H "Authorization: token ${GA_TOKEN}" \ -H "Content-Type: application/json" \ -d "$RULE" \ - "${API}/repos/${GITEA_ORG}/${REPO}/branch_protections") + "${API}/repos/${GIT_ORG}/${REPO}/branch_protections") HTTP=$(echo "$RESPONSE" | tail -1) BODY=$(echo "$RESPONSE" | sed '$d') diff --git a/.mokogitea/cascade-dev.yml b/.mokogit/.mokogitea/cascade-dev.yml similarity index 100% rename from .mokogitea/cascade-dev.yml rename to .mokogit/.mokogitea/cascade-dev.yml diff --git a/.mokogitea/cleanup.yml b/.mokogit/.mokogitea/cleanup.yml similarity index 91% rename from .mokogitea/cleanup.yml rename to .mokogit/.mokogitea/cleanup.yml index 5e9423f..49c4621 100644 --- a/.mokogitea/cleanup.yml +++ b/.mokogit/.mokogitea/cleanup.yml @@ -3,7 +3,7 @@ # SPDX-License-Identifier: GPL-3.0-or-later # # FILE INFORMATION -# DEFGROUP: Gitea.Workflow +# DEFGROUP: Git.Workflow # INGROUP: MokoStandards.Maintenance # REPO: https://git.mokoconsulting.tech/MokoConsulting/MokoStandards # PATH: /.gitea/workflows/cleanup.yml @@ -21,7 +21,7 @@ permissions: contents: write env: - GITEA_URL: ${{ vars.GITEA_URL || 'https://git.mokoconsulting.tech' }} + GIT_URL: ${{ vars.GITEA_URL || 'https://git.mokoconsulting.tech' }} jobs: cleanup: @@ -40,7 +40,7 @@ jobs: GA_TOKEN: ${{ secrets.GA_TOKEN }} run: | echo "=== Merged Branch Cleanup ===" - API="${GITEA_URL}/api/v1/repos/${{ github.repository }}" + API="${GIT_URL}/api/v1/repos/${{ github.repository }}" # List branches via API BRANCHES=$(curl -sS -H "Authorization: token ${GA_TOKEN}" \ @@ -69,7 +69,7 @@ jobs: GA_TOKEN: ${{ secrets.GA_TOKEN }} run: | echo "=== Workflow Run Cleanup ===" - API="${GITEA_URL}/api/v1/repos/${{ github.repository }}" + API="${GIT_URL}/api/v1/repos/${{ github.repository }}" CUTOFF=$(date -d "30 days ago" +%Y-%m-%dT%H:%M:%SZ 2>/dev/null || date -v-30d +%Y-%m-%dT%H:%M:%SZ) # Get old completed runs diff --git a/.mokogitea/deploy-manual.yml b/.mokogit/.mokogitea/deploy-manual.yml similarity index 99% rename from .mokogitea/deploy-manual.yml rename to .mokogit/.mokogitea/deploy-manual.yml index df4c5bc..2342612 100644 --- a/.mokogitea/deploy-manual.yml +++ b/.mokogit/.mokogitea/deploy-manual.yml @@ -3,7 +3,7 @@ # SPDX-License-Identifier: GPL-3.0-or-later # # FILE INFORMATION -# DEFGROUP: Gitea.Workflow +# DEFGROUP: Git.Workflow # INGROUP: MokoStandards.Deploy # REPO: https://git.mokoconsulting.tech/MokoConsulting/MokoStandards-API # PATH: /templates/workflows/joomla/deploy-manual.yml.template diff --git a/.mokogitea/gitleaks.yml b/.mokogit/.mokogitea/gitleaks.yml similarity index 97% rename from .mokogitea/gitleaks.yml rename to .mokogit/.mokogitea/gitleaks.yml index 6532d76..4b99528 100644 --- a/.mokogitea/gitleaks.yml +++ b/.mokogit/.mokogitea/gitleaks.yml @@ -3,7 +3,7 @@ # SPDX-License-Identifier: GPL-3.0-or-later # # FILE INFORMATION -# DEFGROUP: Gitea.Workflow +# DEFGROUP: Git.Workflow # INGROUP: MokoStandards.Security # REPO: https://git.mokoconsulting.tech/mokoconsulting-tech/MokoStandards-API # PATH: /templates/workflows/gitleaks.yml.template @@ -38,7 +38,7 @@ permissions: env: NTFY_URL: ${{ vars.NTFY_URL || 'https://ntfy.mokoconsulting.tech' }} - NTFY_TOPIC: ${{ vars.NTFY_TOPIC || 'gitea-security' }} + NTFY_TOPIC: ${{ vars.NTFY_TOPIC || 'git-security' }} jobs: gitleaks: diff --git a/.mokogitea/notify.yml b/.mokogit/.mokogitea/notify.yml similarity index 96% rename from .mokogitea/notify.yml rename to .mokogit/.mokogitea/notify.yml index d59ed49..456799b 100644 --- a/.mokogitea/notify.yml +++ b/.mokogit/.mokogitea/notify.yml @@ -3,7 +3,7 @@ # SPDX-License-Identifier: GPL-3.0-or-later # # FILE INFORMATION -# DEFGROUP: Gitea.Workflow +# DEFGROUP: Git.Workflow # INGROUP: MokoStandards.Notifications # REPO: https://git.mokoconsulting.tech/MokoConsulting/MokoStandards # PATH: /.gitea/workflows/notify.yml @@ -27,7 +27,7 @@ permissions: env: NTFY_URL: ${{ vars.NTFY_URL || 'https://ntfy.mokoconsulting.tech' }} - NTFY_TOPIC: ${{ vars.NTFY_TOPIC || 'gitea-releases' }} + NTFY_TOPIC: ${{ vars.NTFY_TOPIC || 'git-releases' }} jobs: notify: diff --git a/.mokogitea/pr-check.yml b/.mokogit/.mokogitea/pr-check.yml similarity index 99% rename from .mokogitea/pr-check.yml rename to .mokogit/.mokogitea/pr-check.yml index a993f30..4985ba5 100644 --- a/.mokogitea/pr-check.yml +++ b/.mokogit/.mokogitea/pr-check.yml @@ -3,7 +3,7 @@ # SPDX-License-Identifier: GPL-3.0-or-later # # FILE INFORMATION -# DEFGROUP: Gitea.Workflow +# DEFGROUP: Git.Workflow # INGROUP: MokoStandards.CI # REPO: https://git.mokoconsulting.tech/MokoConsulting/MokoStandards # PATH: /.gitea/workflows/pr-check.yml diff --git a/.mokogitea/pre-release.yml b/.mokogit/.mokogitea/pre-release.yml similarity index 90% rename from .mokogitea/pre-release.yml rename to .mokogit/.mokogitea/pre-release.yml index 35e8abb..13e6c93 100644 --- a/.mokogitea/pre-release.yml +++ b/.mokogit/.mokogitea/pre-release.yml @@ -3,7 +3,7 @@ # SPDX-License-Identifier: GPL-3.0-or-later # # FILE INFORMATION -# DEFGROUP: Gitea.Workflow +# DEFGROUP: Git.Workflow # INGROUP: MokoStandards.Release # REPO: https://git.mokoconsulting.tech/MokoConsulting/MokoStandards # PATH: /.gitea/workflows/pre-release.yml @@ -29,9 +29,9 @@ permissions: contents: write env: - GITEA_URL: ${{ vars.GITEA_URL || 'https://git.mokoconsulting.tech' }} - GITEA_ORG: ${{ vars.GITEA_ORG || github.repository_owner }} - GITEA_REPO: ${{ vars.GITEA_REPO || github.event.repository.name }} + GIT_URL: ${{ vars.GITEA_URL || 'https://git.mokoconsulting.tech' }} + GIT_ORG: ${{ vars.GITEA_ORG || github.repository_owner }} + GIT_REPO: ${{ vars.GITEA_REPO || github.event.repository.name }} jobs: build: @@ -103,8 +103,8 @@ jobs: fi # Commit version bump - git config --local user.email "gitea-actions[bot]@mokoconsulting.tech" - git config --local user.name "gitea-actions[bot]" + git config --local user.email "git-actions[bot]@mokoconsulting.tech" + git config --local user.name "git-actions[bot]" git remote set-url origin "https://jmiller:${{ secrets.GA_TOKEN }}@git.mokoconsulting.tech/${{ github.repository }}.git" git add -A git diff --cached --quiet || { @@ -120,11 +120,11 @@ jobs: if [ -z "$EXT_ELEMENT" ]; then EXT_ELEMENT=$(basename "$MANIFEST" .xml | tr '[:upper:]' '[:lower:]') case "$EXT_ELEMENT" in - templatedetails|manifest) EXT_ELEMENT=$(echo "${GITEA_REPO}" | tr '[:upper:]' '[:lower:]' | tr -d ' -') ;; + templatedetails|manifest) EXT_ELEMENT=$(echo "${GIT_REPO}" | tr '[:upper:]' '[:lower:]' | tr -d ' -') ;; esac fi else - EXT_ELEMENT=$(echo "${GITEA_REPO}" | tr '[:upper:]' '[:lower:]' | tr -d ' -') + EXT_ELEMENT=$(echo "${GIT_REPO}" | tr '[:upper:]' '[:lower:]' | tr -d ' -') fi ZIP_NAME="${EXT_ELEMENT}-${VERSION}${SUFFIX}.zip" @@ -172,7 +172,7 @@ jobs: echo "sha256=${SHA256}" >> "$GITHUB_OUTPUT" echo "ZIP: ${ZIP_NAME} (SHA: ${SHA256:0:16}...)" - - name: Create or replace Gitea release + - name: Create or replace Git release id: release run: | TAG="${{ steps.meta.outputs.tag }}" @@ -182,7 +182,7 @@ jobs: ZIP_NAME="${{ steps.meta.outputs.zip_name }}" EXT_ELEMENT="${{ steps.meta.outputs.ext_element }}" TOKEN="${{ secrets.GA_TOKEN }}" - API="${GITEA_URL}/api/v1/repos/${GITEA_ORG}/${GITEA_REPO}" + API="${GIT_URL}/api/v1/repos/${GIT_ORG}/${GIT_REPO}" BRANCH=$(git branch --show-current) BODY="## ${VERSION} ($(date +%Y-%m-%d)) @@ -237,7 +237,7 @@ jobs: export PY_STABILITY="$STABILITY" PY_VERSION="$VERSION" PY_SHA256="$SHA256" \ PY_ZIP_NAME="$ZIP_NAME" PY_TAG="$TAG" PY_DATE="$DATE" \ - PY_GITEA_ORG="$GITEA_ORG" PY_GITEA_REPO="$GITEA_REPO" + PY_GIT_ORG="$GIT_ORG" PY_GIT_REPO="$GIT_REPO" python3 << 'PYEOF' import re, os @@ -247,9 +247,9 @@ jobs: zip_name = os.environ["PY_ZIP_NAME"] tag = os.environ["PY_TAG"] date = os.environ["PY_DATE"] - gitea_org = os.environ["PY_GITEA_ORG"] - gitea_repo = os.environ["PY_GITEA_REPO"] - download_url = f"https://git.mokoconsulting.tech/{gitea_org}/{gitea_repo}/releases/download/{tag}/{zip_name}" + git_org = os.environ["PY_GIT_ORG"] + git_repo = os.environ["PY_GIT_REPO"] + download_url = f"https://git.mokoconsulting.tech/{git_org}/{git_repo}/releases/download/{tag}/{zip_name}" with open("updates.xml", "r") as f: content = f.read() @@ -280,8 +280,8 @@ jobs: # Commit and push to current branch if ! git diff --quiet updates.xml 2>/dev/null; then - git config --local user.email "gitea-actions[bot]@mokoconsulting.tech" - git config --local user.name "gitea-actions[bot]" + git config --local user.email "git-actions[bot]@mokoconsulting.tech" + git config --local user.name "git-actions[bot]" git add updates.xml git commit -m "chore: update ${STABILITY} channel ${VERSION} [skip ci]" git push origin HEAD 2>&1 || echo "WARNING: push failed" @@ -290,8 +290,8 @@ jobs: - name: "Sync updates.xml to all branches" run: | CURRENT_BRANCH="${{ github.ref_name }}" - git config --local user.email "gitea-actions[bot]@mokoconsulting.tech" - git config --local user.name "gitea-actions[bot]" + git config --local user.email "git-actions[bot]@mokoconsulting.tech" + git config --local user.name "git-actions[bot]" # Sync updates.xml to main and dev (whichever isn't current) for BRANCH in main dev; do @@ -312,7 +312,7 @@ jobs: - name: "Delete lesser pre-release channels (cascade)" continue-on-error: true run: | - API_BASE="${GITEA_URL}/api/v1/repos/${GITEA_ORG}/${GITEA_REPO}" + API_BASE="${GIT_URL}/api/v1/repos/${GIT_ORG}/${GIT_REPO}" TOKEN="${{ secrets.GA_TOKEN }}" STABILITY="${{ steps.meta.outputs.stability }}" diff --git a/.mokogitea/security-audit.yml b/.mokogit/.mokogitea/security-audit.yml similarity index 96% rename from .mokogitea/security-audit.yml rename to .mokogit/.mokogitea/security-audit.yml index ff6de4c..f038bfd 100644 --- a/.mokogitea/security-audit.yml +++ b/.mokogit/.mokogitea/security-audit.yml @@ -3,7 +3,7 @@ # SPDX-License-Identifier: GPL-3.0-or-later # # FILE INFORMATION -# DEFGROUP: Gitea.Workflow +# DEFGROUP: Git.Workflow # INGROUP: MokoStandards.Security # REPO: https://git.mokoconsulting.tech/MokoConsulting/MokoStandards # PATH: /.gitea/workflows/security-audit.yml @@ -30,7 +30,7 @@ permissions: env: NTFY_URL: ${{ vars.NTFY_URL || 'https://ntfy.mokoconsulting.tech' }} - NTFY_TOPIC: ${{ vars.NTFY_TOPIC || 'gitea-security' }} + NTFY_TOPIC: ${{ vars.NTFY_TOPIC || 'git-security' }} jobs: audit: diff --git a/.mokogitea/workflows/auto-bump.yml b/.mokogit/.mokogitea/workflows/auto-bump.yml similarity index 80% rename from .mokogitea/workflows/auto-bump.yml rename to .mokogit/.mokogitea/workflows/auto-bump.yml index a47661a..fba253e 100644 --- a/.mokogitea/workflows/auto-bump.yml +++ b/.mokogit/.mokogitea/workflows/auto-bump.yml @@ -3,10 +3,10 @@ # SPDX-License-Identifier: GPL-3.0-or-later # # FILE INFORMATION -# DEFGROUP: MokoGitea.Workflow +# DEFGROUP: MokoGIT.Workflow # INGROUP: MokoCLI.Release # REPO: https://git.mokoconsulting.tech/MokoConsulting/mokocli -# PATH: /.mokogitea/workflows/auto-bump.yml +# PATH: /.mokogit/workflows/auto-bump.yml # VERSION: 09.02.00 # BRIEF: Auto patch-bump version on every push to dev (skips merge commits) @@ -22,7 +22,7 @@ on: env: FORCE_JAVASCRIPT_ACTIONS_TO_NODE24: true - MOKOGITEA_URL: ${{ vars.GITEA_URL || 'https://git.mokoconsulting.tech' }} + MOKOGIT_URL: ${{ vars.GITEA_URL || 'https://git.mokoconsulting.tech' }} permissions: contents: write @@ -40,7 +40,7 @@ jobs: - name: Checkout uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6 with: - token: ${{ secrets.MOKOGITEA_TOKEN }} + token: ${{ secrets.MOKOGIT_TOKEN }} fetch-depth: 1 - name: Setup MokoCLI tools @@ -52,7 +52,7 @@ jobs: echo "MOKO_CLI=/opt/mokocli/cli" >> "$GITHUB_ENV" else git clone --depth 1 --branch main --quiet \ - "https://x-access-token:${{ secrets.MOKOGITEA_TOKEN }}@git.mokoconsulting.tech/MokoConsulting/mokocli.git" \ + "https://x-access-token:${{ secrets.MOKOGIT_TOKEN }}@git.mokoconsulting.tech/MokoConsulting/mokocli.git" \ /tmp/mokocli cd /tmp/mokocli && composer install --no-dev --no-interaction --quiet echo "MOKO_CLI=/tmp/mokocli/cli" >> "$GITHUB_ENV" @@ -62,5 +62,5 @@ jobs: run: | php ${MOKO_CLI}/version_auto_bump.php \ --path . --branch "${GITHUB_REF_NAME}" \ - --token "${{ secrets.MOKOGITEA_TOKEN }}" \ - --repo-url "https://x-access-token:${{ secrets.MOKOGITEA_TOKEN }}@git.mokoconsulting.tech/${{ github.repository }}.git" + --token "${{ secrets.MOKOGIT_TOKEN }}" \ + --repo-url "https://x-access-token:${{ secrets.MOKOGIT_TOKEN }}@git.mokoconsulting.tech/${{ github.repository }}.git" diff --git a/.mokogitea/workflows/auto-release.yml b/.mokogit/.mokogitea/workflows/auto-release.yml similarity index 88% rename from .mokogitea/workflows/auto-release.yml rename to .mokogit/.mokogitea/workflows/auto-release.yml index ce7bc6c..d6438cb 100644 --- a/.mokogitea/workflows/auto-release.yml +++ b/.mokogit/.mokogitea/workflows/auto-release.yml @@ -3,18 +3,18 @@ # SPDX-License-Identifier: GPL-3.0-or-later # # FILE INFORMATION -# DEFGROUP: MokoGitea.Workflow +# DEFGROUP: MokoGIT.Workflow # INGROUP: MokoCLI.Release # REPO: https://git.mokoconsulting.tech/MokoConsulting/mokocli # PATH: /templates/workflows/universal/auto-release.yml.template # VERSION: 05.01.00 -# BRIEF: Universal build & release � detects platform from MokoGitea repo metadata (API) +# BRIEF: Universal build & release � detects platform from MokoGIT repo metadata (API) # # +=======================================================================+ # | UNIVERSAL BUILD & RELEASE PIPELINE | # +=======================================================================+ # | | -# | Reads MokoGitea repo metadata (joomla|dolibarr|generic) to branch logic. | +# | Reads MokoGIT repo metadata (joomla|dolibarr|generic) to branch logic. | # | | # | Platform-specific: | # | joomla: XML manifest, type-prefixed packages | @@ -31,7 +31,7 @@ on: branches: - main paths-ignore: - - '.mokogitea/workflows/**' + - '.mokogit/workflows/**' - '*.md' - 'wiki/**' - '.editorconfig' @@ -52,9 +52,9 @@ on: env: FORCE_JAVASCRIPT_ACTIONS_TO_NODE24: true - MOKOGITEA_URL: ${{ vars.GITEA_URL || 'https://git.mokoconsulting.tech' }} - GITEA_ORG: ${{ vars.GITEA_ORG || github.repository_owner }} - GITEA_REPO: ${{ vars.GITEA_REPO || github.event.repository.name }} + MOKOGIT_URL: ${{ vars.GITEA_URL || 'https://git.mokoconsulting.tech' }} + GIT_ORG: ${{ vars.GITEA_ORG || github.repository_owner }} + GIT_REPO: ${{ vars.GITEA_REPO || github.event.repository.name }} permissions: contents: write @@ -77,13 +77,13 @@ jobs: - name: Checkout repository uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6 with: - token: ${{ secrets.MOKOGITEA_TOKEN }} + token: ${{ secrets.MOKOGIT_TOKEN }} fetch-depth: 1 submodules: recursive - name: Setup MokoCLI tools env: - MOKO_CLONE_TOKEN: ${{ secrets.MOKOGITEA_TOKEN }} + MOKO_CLONE_TOKEN: ${{ secrets.MOKOGIT_TOKEN }} MOKO_CLONE_HOST: git.mokoconsulting.tech/MokoConsulting run: | if [ -f /opt/mokocli/cli/version_bump.php ] && [ -f /opt/mokocli/vendor/autoload.php ]; then @@ -106,28 +106,28 @@ jobs: run: | php ${MOKO_CLI}/branch_rename.php \ --from "${{ github.event.pull_request.head.ref || 'dev' }}" --to rc \ - --token "${{ secrets.MOKOGITEA_TOKEN }}" \ - --api-base "${MOKOGITEA_URL}/api/v1/repos/${GITEA_ORG}/${GITEA_REPO}" \ + --token "${{ secrets.MOKOGIT_TOKEN }}" \ + --api-base "${MOKOGIT_URL}/api/v1/repos/${GIT_ORG}/${GIT_REPO}" \ --pr "${{ github.event.pull_request.number }}" - name: Checkout rc and configure git run: | git fetch origin rc git checkout rc - git config --local user.email "mokogitea-actions[bot]@mokoconsulting.tech" - git config --local user.name "mokogitea-actions[bot]" - git remote set-url origin "https://x-access-token:${{ secrets.MOKOGITEA_TOKEN }}@git.mokoconsulting.tech/${{ github.repository }}.git" + git config --local user.email "mokogit-actions[bot]@mokoconsulting.tech" + git config --local user.name "mokogit-actions[bot]" + git remote set-url origin "https://x-access-token:${{ secrets.MOKOGIT_TOKEN }}@git.mokoconsulting.tech/${{ github.repository }}.git" - name: Publish RC release run: | php ${MOKO_CLI}/release_publish.php \ --path . --stability rc --bump minor --branch rc \ - --token "${{ secrets.MOKOGITEA_TOKEN }}" + --token "${{ secrets.MOKOGIT_TOKEN }}" - name: Update RC release notes from CHANGELOG.md run: | - API_BASE="${MOKOGITEA_URL}/api/v1/repos/${GITEA_ORG}/${GITEA_REPO}" - TOKEN="${{ secrets.MOKOGITEA_TOKEN }}" + API_BASE="${MOKOGIT_URL}/api/v1/repos/${GIT_ORG}/${GIT_REPO}" + TOKEN="${{ secrets.MOKOGIT_TOKEN }}" # Extract [Unreleased] section from changelog NOTES="" @@ -180,15 +180,15 @@ jobs: - name: Checkout repository uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6 with: - token: ${{ secrets.MOKOGITEA_TOKEN }} + token: ${{ secrets.MOKOGIT_TOKEN }} fetch-depth: 0 submodules: recursive - name: Configure git for bot pushes run: | - git config --local user.email "mokogitea-actions[bot]@mokoconsulting.tech" - git config --local user.name "mokogitea-actions[bot]" - git remote set-url origin "https://x-access-token:${{ secrets.MOKOGITEA_TOKEN }}@git.mokoconsulting.tech/${{ github.repository }}.git" + git config --local user.email "mokogit-actions[bot]@mokoconsulting.tech" + git config --local user.name "mokogit-actions[bot]" + git remote set-url origin "https://x-access-token:${{ secrets.MOKOGIT_TOKEN }}@git.mokoconsulting.tech/${{ github.repository }}.git" - name: Check for merge conflict markers run: | @@ -205,7 +205,7 @@ jobs: - name: Setup MokoCLI tools env: - MOKO_CLONE_TOKEN: ${{ secrets.MOKOGITEA_TOKEN }} + MOKO_CLONE_TOKEN: ${{ secrets.MOKOGIT_TOKEN }} MOKO_CLONE_HOST: git.mokoconsulting.tech/MokoConsulting COMPOSER_AUTH: '{"github-oauth":{"github.com":"${{ secrets.GH_MIRROR_TOKEN }}"}}' run: | @@ -252,7 +252,7 @@ jobs: fi php ${MOKO_CLI}/release_publish.php \ --path . --stability stable ${BUMP_FLAG} --branch main \ - --token "${{ secrets.MOKOGITEA_TOKEN }}" + --token "${{ secrets.MOKOGIT_TOKEN }}" - name: "Read published version" id: version @@ -279,8 +279,8 @@ jobs: !startsWith(steps.platform.outputs.platform, 'joomla') run: | VERSION="${{ steps.version.outputs.version }}" - API_BASE="${MOKOGITEA_URL}/api/v1/repos/${GITEA_ORG}/${GITEA_REPO}" - TOKEN="${{ secrets.MOKOGITEA_TOKEN }}" + API_BASE="${MOKOGIT_URL}/api/v1/repos/${GIT_ORG}/${GIT_REPO}" + TOKEN="${{ secrets.MOKOGIT_TOKEN }}" SEMVER_TAG="v${VERSION}" echo "Creating semver tag: ${SEMVER_TAG}" @@ -304,8 +304,8 @@ jobs: - name: Update release notes and promote changelog run: | - API_BASE="${MOKOGITEA_URL}/api/v1/repos/${GITEA_ORG}/${GITEA_REPO}" - TOKEN="${{ secrets.MOKOGITEA_TOKEN }}" + API_BASE="${MOKOGIT_URL}/api/v1/repos/${GIT_ORG}/${GIT_REPO}" + TOKEN="${{ secrets.MOKOGIT_TOKEN }}" # Get the stable release info (version and ID) RELEASE_JSON=$(curl -sf -H "Authorization: token ${TOKEN}" \ @@ -373,10 +373,10 @@ jobs: VERSION="${{ steps.bump.outputs.version || steps.version.outputs.version }}" RELEASE_TAG="${{ steps.version.outputs.release_tag }}" GH_REPO="${{ vars.GH_MIRROR_REPO || github.repository }}" - API_BASE="${MOKOGITEA_URL}/api/v1/repos/${GITEA_ORG}/${GITEA_REPO}" + API_BASE="${MOKOGIT_URL}/api/v1/repos/${GIT_ORG}/${GIT_REPO}" php ${MOKO_CLI}/release_mirror.php \ --version "$VERSION" --tag "$RELEASE_TAG" \ - --token "${{ secrets.MOKOGITEA_TOKEN }}" --api-base "$API_BASE" \ + --token "${{ secrets.MOKOGIT_TOKEN }}" --api-base "$API_BASE" \ --gh-token "${{ secrets.GH_MIRROR_TOKEN }}" --gh-repo "$GH_REPO" \ --branch main 2>&1 || true echo "GitHub mirror updated" >> $GITHUB_STEP_SUMMARY @@ -402,8 +402,8 @@ jobs: if: steps.version.outputs.skip != 'true' continue-on-error: true run: | - API_BASE="${MOKOGITEA_URL}/api/v1/repos/${GITEA_ORG}/${GITEA_REPO}" - TOKEN="${{ secrets.MOKOGITEA_TOKEN }}" + API_BASE="${MOKOGIT_URL}/api/v1/repos/${GIT_ORG}/${GIT_REPO}" + TOKEN="${{ secrets.MOKOGIT_TOKEN }}" # Delete rc branch (ephemeral — created by promote-rc) curl -sf -X DELETE -H "Authorization: token ${TOKEN}" \ @@ -418,8 +418,8 @@ jobs: if: steps.version.outputs.skip != 'true' continue-on-error: true run: | - API_BASE="${MOKOGITEA_URL}/api/v1/repos/${GITEA_ORG}/${GITEA_REPO}" - TOKEN="${{ secrets.MOKOGITEA_TOKEN }}" + API_BASE="${MOKOGIT_URL}/api/v1/repos/${GIT_ORG}/${GIT_REPO}" + TOKEN="${{ secrets.MOKOGIT_TOKEN }}" VERSION="${{ steps.bump.outputs.version || steps.version.outputs.version }}" BRANCH_NAME="version/${VERSION}" MAIN_SHA=$(git rev-parse HEAD) @@ -439,9 +439,9 @@ jobs: if: steps.version.outputs.skip != 'true' continue-on-error: true run: | - API_BASE="${MOKOGITEA_URL}/api/v1/repos/${GITEA_ORG}/${GITEA_REPO}" + API_BASE="${MOKOGIT_URL}/api/v1/repos/${GIT_ORG}/${GIT_REPO}" php ${MOKO_CLI}/version_reset_dev.php \ - --token "${{ secrets.MOKOGITEA_TOKEN }}" --api-base "${API_BASE}" \ + --token "${{ secrets.MOKOGIT_TOKEN }}" --api-base "${API_BASE}" \ --branch dev --path . 2>&1 || true # -- Summary -------------------------------------------------------------- @@ -465,5 +465,5 @@ jobs: echo "| Version | \`${VERSION}\` |" >> $GITHUB_STEP_SUMMARY echo "| Branch | \`${{ steps.version.outputs.branch }}\` |" >> $GITHUB_STEP_SUMMARY echo "| Tag | \`${{ steps.version.outputs.tag }}\` |" >> $GITHUB_STEP_SUMMARY - echo "| Release | [View](${MOKOGITEA_URL}/${GITEA_ORG}/${GITEA_REPO}/releases/tag/${{ steps.version.outputs.tag }}) |" >> $GITHUB_STEP_SUMMARY + echo "| Release | [View](${MOKOGIT_URL}/${GIT_ORG}/${GIT_REPO}/releases/tag/${{ steps.version.outputs.tag }}) |" >> $GITHUB_STEP_SUMMARY fi diff --git a/.mokogitea/workflows/branch-cleanup.yml b/.mokogit/.mokogitea/workflows/branch-cleanup.yml similarity index 90% rename from .mokogitea/workflows/branch-cleanup.yml rename to .mokogit/.mokogitea/workflows/branch-cleanup.yml index aca4a9d..bc37ded 100644 --- a/.mokogitea/workflows/branch-cleanup.yml +++ b/.mokogit/.mokogitea/workflows/branch-cleanup.yml @@ -3,10 +3,10 @@ # SPDX-License-Identifier: GPL-3.0-or-later # # FILE INFORMATION -# DEFGROUP: MokoGitea.Workflow +# DEFGROUP: MokoGIT.Workflow # INGROUP: MokoCLI.Universal # REPO: https://git.mokoconsulting.tech/MokoConsulting/mokocli -# PATH: /.mokogitea/workflows/branch-cleanup.yml +# PATH: /.mokogit/workflows/branch-cleanup.yml # VERSION: 01.00.00 # BRIEF: Delete feature branches after PR merge @@ -37,7 +37,7 @@ jobs: ENCODED=$(printf '%s' "${BRANCH}" | sed 's|/|%2F|g') STATUS=$(curl -sf -o /dev/null -w "%{http_code}" -X DELETE \ - -H "Authorization: token ${{ secrets.MOKOGITEA_TOKEN }}" \ + -H "Authorization: token ${{ secrets.MOKOGIT_TOKEN }}" \ "${API}/${ENCODED}" 2>/dev/null || true) if [ "$STATUS" = "204" ]; then diff --git a/.mokogitea/workflows/cascade-dev.yml b/.mokogit/.mokogitea/workflows/cascade-dev.yml similarity index 92% rename from .mokogitea/workflows/cascade-dev.yml rename to .mokogit/.mokogitea/workflows/cascade-dev.yml index 1b9f8a6..6c7e26a 100644 --- a/.mokogitea/workflows/cascade-dev.yml +++ b/.mokogit/.mokogitea/workflows/cascade-dev.yml @@ -1,7 +1,7 @@ # Copyright (C) 2026 Moko Consulting # SPDX-License-Identifier: GPL-3.0-or-later # FILE INFORMATION -# DEFGROUP: MokoGitea.Workflow +# DEFGROUP: MokoGIT.Workflow # INGROUP: MokoCLI.Release # BRIEF: Reset dev to main after each release (cascade). Moved out of auto-release Step 11. # @@ -43,14 +43,14 @@ jobs: steps: - name: Force dev to main env: - TOKEN: ${{ secrets.MOKOGITEA_TOKEN }} + TOKEN: ${{ secrets.MOKOGIT_TOKEN }} SERVER: ${{ vars.GITEA_URL || 'https://git.mokoconsulting.tech' }} REPO: ${{ github.repository }} run: | set -euo pipefail git init -q sync && cd sync - git config user.email "mokogitea-actions[bot]@mokoconsulting.tech" - git config user.name "mokogitea-actions[bot]" + git config user.email "mokogit-actions[bot]@mokoconsulting.tech" + git config user.name "mokogit-actions[bot]" git remote add origin "https://x-access-token:${TOKEN}@${SERVER#https://}/${REPO}.git" git fetch -q --depth=1 origin main diff --git a/.mokogitea/workflows/ci-generic.yml b/.mokogit/.mokogitea/workflows/ci-generic.yml similarity index 98% rename from .mokogitea/workflows/ci-generic.yml rename to .mokogit/.mokogitea/workflows/ci-generic.yml index 330e6f9..053109a 100644 --- a/.mokogitea/workflows/ci-generic.yml +++ b/.mokogit/.mokogitea/workflows/ci-generic.yml @@ -3,10 +3,10 @@ # SPDX-License-Identifier: GPL-3.0-or-later # # FILE INFORMATION -# DEFGROUP: MokoGitea.Workflow +# DEFGROUP: MokoGIT.Workflow # INGROUP: MokoCLI.CI # REPO: https://git.mokoconsulting.tech/MokoConsulting/Template-Generic -# PATH: /.mokogitea/workflows/ci-generic.yml +# PATH: /.mokogit/workflows/ci-generic.yml # VERSION: 01.00.00 # BRIEF: CI pipeline — lint, validate, and test for generic projects (PHP + Node.js) diff --git a/.mokogitea/workflows/ci-issue-reporter.yml b/.mokogit/.mokogitea/workflows/ci-issue-reporter.yml similarity index 75% rename from .mokogitea/workflows/ci-issue-reporter.yml rename to .mokogit/.mokogitea/workflows/ci-issue-reporter.yml index 335e92f..ede368d 100644 --- a/.mokogitea/workflows/ci-issue-reporter.yml +++ b/.mokogit/.mokogitea/workflows/ci-issue-reporter.yml @@ -3,12 +3,12 @@ # SPDX-License-Identifier: GPL-3.0-or-later # # FILE INFORMATION -# DEFGROUP: MokoGitea.Workflow +# DEFGROUP: MokoGIT.Workflow # INGROUP: MokoCLI.Universal # REPO: https://git.mokoconsulting.tech/MokoConsulting/mokocli -# PATH: /.mokogitea/workflows/ci-issue-reporter.yml +# PATH: /.mokogit/workflows/ci-issue-reporter.yml # VERSION: 01.00.00 -# BRIEF: Reusable workflow — creates/updates a MokoGitea issue when a CI gate fails. +# BRIEF: Reusable workflow — creates/updates a MokoGIT issue when a CI gate fails. # Clones MokoCLI and runs cli/ci_issue_reporter.sh. name: "Universal: CI Issue Reporter" @@ -35,7 +35,7 @@ on: type: string default: "" secrets: - MOKOGITEA_TOKEN: + MOKOGIT_TOKEN: required: true env: @@ -49,16 +49,16 @@ jobs: steps: - name: Clone MokoCLI env: - MOKOGITEA_TOKEN: ${{ secrets.MOKOGITEA_TOKEN }} + MOKOGIT_TOKEN: ${{ secrets.MOKOGIT_TOKEN }} run: | - MOKOGITEA_URL="${{ vars.GITEA_URL || 'https://git.mokoconsulting.tech' }}" - git clone --depth 1 --filter=blob:none --sparse "${MOKOGITEA_URL}/MokoConsulting/mokocli.git" /tmp/mokocli + MOKOGIT_URL="${{ vars.GITEA_URL || 'https://git.mokoconsulting.tech' }}" + git clone --depth 1 --filter=blob:none --sparse "${MOKOGIT_URL}/MokoConsulting/mokocli.git" /tmp/mokocli cd /tmp/mokocli && git sparse-checkout set cli/ci_issue_reporter.sh - name: Report CI failure env: - MOKOGITEA_TOKEN: ${{ secrets.MOKOGITEA_TOKEN }} - MOKOGITEA_URL: ${{ vars.GITEA_URL || 'https://git.mokoconsulting.tech' }} + MOKOGIT_TOKEN: ${{ secrets.MOKOGIT_TOKEN }} + MOKOGIT_URL: ${{ vars.GITEA_URL || 'https://git.mokoconsulting.tech' }} run: | chmod +x /tmp/mokocli/cli/ci_issue_reporter.sh /tmp/mokocli/cli/ci_issue_reporter.sh \ diff --git a/.mokogitea/workflows/ci-joomla.yml b/.mokogit/.mokogitea/workflows/ci-joomla.yml similarity index 98% rename from .mokogitea/workflows/ci-joomla.yml rename to .mokogit/.mokogitea/workflows/ci-joomla.yml index e61ed5b..f9a25d9 100644 --- a/.mokogitea/workflows/ci-joomla.yml +++ b/.mokogit/.mokogitea/workflows/ci-joomla.yml @@ -5,7 +5,7 @@ # SPDX-License-Identifier: GPL-3.0-or-later # # FILE INFORMATION -# DEFGROUP: MokoGitea.Workflow.Template +# DEFGROUP: MokoGIT.Workflow.Template # INGROUP: MokoCLI.CI # REPO: https://git.mokoconsulting.tech/MokoConsulting/mokocli # PATH: /templates/workflows/joomla/ci-joomla.yml.template @@ -49,8 +49,8 @@ jobs: - name: Setup MokoCLI tools env: - MOKO_CLONE_TOKEN: ${{ secrets.MOKOGITEA_TOKEN || github.token }} - MOKO_CLONE_HOST: ${{ secrets.MOKOGITEA_TOKEN && 'git.mokoconsulting.tech/MokoConsulting' || 'github.com/mokoconsulting-tech' }} + MOKO_CLONE_TOKEN: ${{ secrets.MOKOGIT_TOKEN || github.token }} + MOKO_CLONE_HOST: ${{ secrets.MOKOGIT_TOKEN && 'git.mokoconsulting.tech/MokoConsulting' || 'github.com/mokoconsulting-tech' }} run: | if [ -d "/opt/mokocli" ] || [ -d "/tmp/mokocli" ]; then echo "MokoCLI already available on runner — skipping clone" @@ -62,7 +62,7 @@ jobs: - name: Install dependencies env: - COMPOSER_AUTH: '{"github-oauth":{"github.com":"${{ secrets.GH_TOKEN || secrets.MOKOGITEA_TOKEN || github.token }}"}}' + COMPOSER_AUTH: '{"github-oauth":{"github.com":"${{ secrets.GH_TOKEN || secrets.MOKOGIT_TOKEN || github.token }}"}}' run: | if [ -f "composer.json" ]; then composer install \ @@ -186,7 +186,7 @@ jobs: else EXT_TYPE=$(grep -oP ']*\btype="\K[^"]+' "$MANIFEST" | head -1) - # 1. Check exists and uses MokoGitea update server + # 1. Check exists and uses MokoGIT update server if ! grep -q '' "$MANIFEST" 2>/dev/null; then echo "::warning file=${MANIFEST}::Missing \`\` tag — extension will not receive OTA updates" echo "- **Missing** \`\` — extension will not receive OTA updates" >> $GITHUB_STEP_SUMMARY @@ -198,12 +198,12 @@ jobs: echo "- **Empty** \`\` — no server URL defined" >> $GITHUB_STEP_SUMMARY WARNINGS=$((WARNINGS + 1)) elif ! echo "$SERVER_URL" | grep -q 'git\.mokoconsulting\.tech'; then - echo "::warning file=${MANIFEST}::Update server does not use MokoGitea engine: ${SERVER_URL}" - echo "- **Non-MokoGitea update server:** \`${SERVER_URL}\`" >> $GITHUB_STEP_SUMMARY + echo "::warning file=${MANIFEST}::Update server does not use MokoGIT engine: ${SERVER_URL}" + echo "- **Non-MokoGIT update server:** \`${SERVER_URL}\`" >> $GITHUB_STEP_SUMMARY echo " Expected: \`https://git.mokoconsulting.tech/{org}/{repo}/updates.xml\`" >> $GITHUB_STEP_SUMMARY WARNINGS=$((WARNINGS + 1)) else - echo "- \`\`: MokoGitea engine ✓" >> $GITHUB_STEP_SUMMARY + echo "- \`\`: MokoGIT engine ✓" >> $GITHUB_STEP_SUMMARY fi fi @@ -2067,7 +2067,7 @@ jobs: - name: Install dependencies env: - COMPOSER_AUTH: '{"github-oauth":{"github.com":"${{ secrets.GH_TOKEN || secrets.MOKOGITEA_TOKEN || github.token }}"}}' + COMPOSER_AUTH: '{"github-oauth":{"github.com":"${{ secrets.GH_TOKEN || secrets.MOKOGIT_TOKEN || github.token }}"}}' run: | if [ -f "composer.json" ]; then composer install \ @@ -2118,7 +2118,7 @@ jobs: - name: Install dependencies env: - COMPOSER_AUTH: '{"github-oauth":{"github.com":"${{ secrets.GH_TOKEN || secrets.MOKOGITEA_TOKEN || github.token }}"}}' + COMPOSER_AUTH: '{"github-oauth":{"github.com":"${{ secrets.GH_TOKEN || secrets.MOKOGIT_TOKEN || github.token }}"}}' run: | if [ -f "composer.json" ]; then composer install --no-interaction --prefer-dist --optimize-autoloader @@ -2185,13 +2185,13 @@ jobs: steps: - name: Trigger pre-release build env: - MOKOGITEA_TOKEN: ${{ secrets.MOKOGITEA_TOKEN }} + MOKOGIT_TOKEN: ${{ secrets.MOKOGIT_TOKEN }} REPO: ${{ github.repository }} BRANCH: ${{ github.head_ref }} run: | curl -s -X POST \ - "${GITEA_URL:-https://git.mokoconsulting.tech}/api/v1/repos/${REPO}/actions/workflows/pre-release.yml/dispatches" \ - -H "Authorization: token ${MOKOGITEA_TOKEN}" \ + "${GIT_URL:-https://git.mokoconsulting.tech}/api/v1/repos/${REPO}/actions/workflows/pre-release.yml/dispatches" \ + -H "Authorization: token ${MOKOGIT_TOKEN}" \ -H "Content-Type: application/json" \ -d "{\"ref\":\"${BRANCH}\",\"inputs\":{\"stability\":\"release-candidate\"}}" echo "### Pre-Release" >> $GITHUB_STEP_SUMMARY diff --git a/.mokogitea/workflows/cleanup.yml b/.mokogit/.mokogitea/workflows/cleanup.yml similarity index 80% rename from .mokogitea/workflows/cleanup.yml rename to .mokogit/.mokogitea/workflows/cleanup.yml index d08e29e..9c13931 100644 --- a/.mokogitea/workflows/cleanup.yml +++ b/.mokogit/.mokogitea/workflows/cleanup.yml @@ -3,10 +3,10 @@ # SPDX-License-Identifier: GPL-3.0-or-later # # FILE INFORMATION -# DEFGROUP: MokoGitea.Workflow +# DEFGROUP: MokoGIT.Workflow # INGROUP: MokoCLI.Maintenance # REPO: https://git.mokoconsulting.tech/MokoConsulting/mokocli -# PATH: /.mokogitea/workflows/cleanup.yml +# PATH: /.mokogit/workflows/cleanup.yml # VERSION: 01.00.00 # BRIEF: Scheduled cleanup — delete merged branches and old workflow runs @@ -21,7 +21,7 @@ permissions: contents: write env: - MOKOGITEA_URL: ${{ vars.GITEA_URL || 'https://git.mokoconsulting.tech' }} + MOKOGIT_URL: ${{ vars.GITEA_URL || 'https://git.mokoconsulting.tech' }} jobs: cleanup: @@ -33,17 +33,17 @@ jobs: uses: actions/checkout@v4 with: fetch-depth: 0 - token: ${{ secrets.MOKOGITEA_TOKEN }} + token: ${{ secrets.MOKOGIT_TOKEN }} - name: Delete merged branches env: - MOKOGITEA_TOKEN: ${{ secrets.MOKOGITEA_TOKEN }} + MOKOGIT_TOKEN: ${{ secrets.MOKOGIT_TOKEN }} run: | echo "=== Merged Branch Cleanup ===" - API="${MOKOGITEA_URL}/api/v1/repos/${{ github.repository }}" + API="${MOKOGIT_URL}/api/v1/repos/${{ github.repository }}" # List branches via API - BRANCHES=$(curl -sS -H "Authorization: token ${MOKOGITEA_TOKEN}" \ + BRANCHES=$(curl -sS -H "Authorization: token ${MOKOGIT_TOKEN}" \ "${API}/branches?limit=50" | jq -r '.[].name') DELETED=0 @@ -56,7 +56,7 @@ jobs: # Check if branch is merged into main if git merge-base --is-ancestor "origin/${BRANCH}" origin/main 2>/dev/null; then echo " Deleting merged branch: ${BRANCH}" - curl -sS -X DELETE -H "Authorization: token ${MOKOGITEA_TOKEN}" \ + curl -sS -X DELETE -H "Authorization: token ${MOKOGIT_TOKEN}" \ "${API}/branches/${BRANCH}" 2>/dev/null || true DELETED=$((DELETED + 1)) fi @@ -66,20 +66,20 @@ jobs: - name: Clean old workflow runs env: - MOKOGITEA_TOKEN: ${{ secrets.MOKOGITEA_TOKEN }} + MOKOGIT_TOKEN: ${{ secrets.MOKOGIT_TOKEN }} run: | echo "=== Workflow Run Cleanup ===" - API="${MOKOGITEA_URL}/api/v1/repos/${{ github.repository }}" + API="${MOKOGIT_URL}/api/v1/repos/${{ github.repository }}" CUTOFF=$(date -d "30 days ago" +%Y-%m-%dT%H:%M:%SZ 2>/dev/null || date -v-30d +%Y-%m-%dT%H:%M:%SZ) # Get old completed runs - RUNS=$(curl -sS -H "Authorization: token ${MOKOGITEA_TOKEN}" \ + RUNS=$(curl -sS -H "Authorization: token ${MOKOGIT_TOKEN}" \ "${API}/actions/runs?status=completed&limit=50" | \ jq -r ".workflow_runs[] | select(.created_at < \"${CUTOFF}\") | .id" 2>/dev/null) DELETED=0 for RUN_ID in $RUNS; do - curl -sS -X DELETE -H "Authorization: token ${MOKOGITEA_TOKEN}" \ + curl -sS -X DELETE -H "Authorization: token ${MOKOGIT_TOKEN}" \ "${API}/actions/runs/${RUN_ID}" 2>/dev/null || true DELETED=$((DELETED + 1)) done diff --git a/.mokogitea/workflows/gitleaks.yml b/.mokogit/.mokogitea/workflows/gitleaks.yml similarity index 97% rename from .mokogitea/workflows/gitleaks.yml rename to .mokogit/.mokogitea/workflows/gitleaks.yml index 23b843e..cea7c9e 100644 --- a/.mokogitea/workflows/gitleaks.yml +++ b/.mokogit/.mokogitea/workflows/gitleaks.yml @@ -3,7 +3,7 @@ # SPDX-License-Identifier: GPL-3.0-or-later # # FILE INFORMATION -# DEFGROUP: MokoGitea.Workflow +# DEFGROUP: MokoGIT.Workflow # INGROUP: MokoCLI.Security # REPO: https://git.mokoconsulting.tech/MokoConsulting/mokocli # PATH: /templates/workflows/gitleaks.yml.template @@ -34,7 +34,7 @@ permissions: env: NTFY_URL: ${{ vars.NTFY_URL || 'https://ntfy.mokoconsulting.tech' }} - NTFY_TOPIC: ${{ vars.NTFY_TOPIC || 'gitea-security' }} + NTFY_TOPIC: ${{ vars.NTFY_TOPIC || 'git-security' }} jobs: gitleaks: diff --git a/.mokogitea/workflows/issue-branch.yml b/.mokogit/.mokogitea/workflows/issue-branch.yml similarity index 88% rename from .mokogitea/workflows/issue-branch.yml rename to .mokogit/.mokogitea/workflows/issue-branch.yml index 12a4b11..da40381 100644 --- a/.mokogitea/workflows/issue-branch.yml +++ b/.mokogit/.mokogitea/workflows/issue-branch.yml @@ -3,7 +3,7 @@ # SPDX-License-Identifier: GPL-3.0-or-later # # FILE INFORMATION -# DEFGROUP: MokoGitea.Workflow +# DEFGROUP: MokoGIT.Workflow # INGROUP: MokoCLI.Automation # VERSION: 01.00.00 # BRIEF: Auto-create feature branch when an issue is opened @@ -19,7 +19,7 @@ permissions: issues: write env: - MOKOGITEA_URL: ${{ vars.GITEA_URL || 'https://git.mokoconsulting.tech' }} + MOKOGIT_URL: ${{ vars.GITEA_URL || 'https://git.mokoconsulting.tech' }} jobs: create-branch: @@ -28,8 +28,8 @@ jobs: steps: - name: Create branch and comment run: | - TOKEN="${{ secrets.MOKOGITEA_TOKEN }}" - API="${MOKOGITEA_URL}/api/v1/repos/${{ github.repository }}" + TOKEN="${{ secrets.MOKOGIT_TOKEN }}" + API="${MOKOGIT_URL}/api/v1/repos/${{ github.repository }}" ISSUE_NUM="${{ github.event.issue.number }}" ISSUE_TITLE="${{ github.event.issue.title }}" @@ -58,7 +58,7 @@ jobs: echo "Created branch: ${BRANCH}" # Comment on issue with branch link - REPO_URL="${MOKOGITEA_URL}/${{ github.repository }}" + REPO_URL="${MOKOGIT_URL}/${{ github.repository }}" BODY="Branch created: [\`${BRANCH}\`](${REPO_URL}/src/branch/${BRANCH})\n\n\`\`\`bash\ngit fetch origin\ngit checkout ${BRANCH}\n\`\`\`" curl -sf -X POST \ diff --git a/.mokogitea/workflows/notify.yml b/.mokogit/.mokogitea/workflows/notify.yml similarity index 94% rename from .mokogitea/workflows/notify.yml rename to .mokogit/.mokogitea/workflows/notify.yml index 6d029c2..f51ad68 100644 --- a/.mokogitea/workflows/notify.yml +++ b/.mokogit/.mokogitea/workflows/notify.yml @@ -3,10 +3,10 @@ # SPDX-License-Identifier: GPL-3.0-or-later # # FILE INFORMATION -# DEFGROUP: MokoGitea.Workflow +# DEFGROUP: MokoGIT.Workflow # INGROUP: MokoCLI.Notifications # REPO: https://git.mokoconsulting.tech/MokoConsulting/mokocli -# PATH: /.mokogitea/workflows/notify.yml +# PATH: /.mokogit/workflows/notify.yml # VERSION: 01.00.00 # BRIEF: Push notifications via ntfy on release success or workflow failure @@ -26,7 +26,7 @@ permissions: env: NTFY_URL: ${{ vars.NTFY_URL || 'https://ntfy.mokoconsulting.tech' }} - NTFY_TOPIC: ${{ vars.NTFY_TOPIC || 'gitea-releases' }} + NTFY_TOPIC: ${{ vars.NTFY_TOPIC || 'git-releases' }} jobs: notify: diff --git a/.mokogitea/workflows/pr-check.yml b/.mokogit/.mokogitea/workflows/pr-check.yml similarity index 96% rename from .mokogitea/workflows/pr-check.yml rename to .mokogit/.mokogitea/workflows/pr-check.yml index 2cd896c..1c75f14 100644 --- a/.mokogitea/workflows/pr-check.yml +++ b/.mokogit/.mokogitea/workflows/pr-check.yml @@ -3,7 +3,7 @@ # SPDX-License-Identifier: GPL-3.0-or-later # # FILE INFORMATION -# DEFGROUP: MokoGitea.Workflow +# DEFGROUP: MokoGIT.Workflow # INGROUP: MokoCLI.CI # REPO: https://git.mokoconsulting.tech/MokoConsulting/mokocli # PATH: /templates/workflows/universal/pr-check.yml.template @@ -149,7 +149,7 @@ jobs: - name: Detect platform id: platform run: | - # Platform comes from the MokoGitea metadata API (public GET); manifest.xml is no longer used. + # Platform comes from the MokoGIT metadata API (public GET); manifest.xml is no longer used. API="${GITHUB_SERVER_URL:-https://git.mokoconsulting.tech}/api/v1/repos/${GITHUB_REPOSITORY}/metadata" PLATFORM="$(curl -sf "$API" 2>/dev/null | python3 -c "import sys, json; print(json.load(sys.stdin).get('platform') or '')" 2>/dev/null || true)" [ -z "$PLATFORM" ] && PLATFORM="generic" @@ -285,10 +285,10 @@ jobs: for ELEMENT in name version description; do grep -q "<${ELEMENT}>" "$MANIFEST" || { echo "::error::Missing <${ELEMENT}> in manifest"; exit 1; } done - # Block legacy raw/branch update server URLs on MokoGitea - RAW_URLS=$(grep -n 'raw/branch' "$MANIFEST" | grep -i 'mokoconsulting\|mokogitea\|git\.mokoconsulting\.tech' || true) + # Block legacy raw/branch update server URLs on MokoGIT + RAW_URLS=$(grep -n 'raw/branch' "$MANIFEST" | grep -i 'mokoconsulting\|mokogit\|git\.mokoconsulting\.tech' || true) if [ -n "$RAW_URLS" ]; then - echo "::error::Manifest contains legacy raw/branch update server URL on MokoGitea. Use the MokoGitea Pages URL instead (e.g. /{REPO}/updates.xml not /{REPO}/raw/branch/main/updates.xml)" + echo "::error::Manifest contains legacy raw/branch update server URL on MokoGIT. Use the MokoGIT Pages URL instead (e.g. /{REPO}/updates.xml not /{REPO}/raw/branch/main/updates.xml)" echo "$RAW_URLS" exit 1 fi @@ -502,12 +502,12 @@ jobs: steps: - name: Trigger RC pre-release env: - MOKOGITEA_TOKEN: ${{ secrets.MOKOGITEA_TOKEN }} + MOKOGIT_TOKEN: ${{ secrets.MOKOGIT_TOKEN }} REPO: ${{ github.repository }} BRANCH: ${{ github.head_ref }} - MOKOGITEA_URL: ${{ vars.GITEA_URL || 'https://git.mokoconsulting.tech' }} + MOKOGIT_URL: ${{ vars.GITEA_URL || 'https://git.mokoconsulting.tech' }} run: | - curl -s -X POST "${MOKOGITEA_URL}/api/v1/repos/${REPO}/actions/workflows/pre-release.yml/dispatches" -H "Authorization: token ${MOKOGITEA_TOKEN}" -H "Content-Type: application/json" -d "{\"ref\":\"${BRANCH}\",\"inputs\":{\"stability\":\"release-candidate\"}}" + curl -s -X POST "${MOKOGIT_URL}/api/v1/repos/${REPO}/actions/workflows/pre-release.yml/dispatches" -H "Authorization: token ${MOKOGIT_TOKEN}" -H "Content-Type: application/json" -d "{\"ref\":\"${BRANCH}\",\"inputs\":{\"stability\":\"release-candidate\"}}" echo "### Pre-Release" >> $GITHUB_STEP_SUMMARY echo "Triggered RC build on branch \`${BRANCH}\`" >> $GITHUB_STEP_SUMMARY @@ -518,7 +518,7 @@ jobs: if: >- always() && needs.validate.result == 'failure' - uses: ./.mokogitea/workflows/ci-issue-reporter.yml + uses: ./.mokogit/workflows/ci-issue-reporter.yml with: gate: "PR Validation" workflow: "PR Check" diff --git a/.mokogitea/workflows/pr-metadata-check.yml b/.mokogit/.mokogitea/workflows/pr-metadata-check.yml similarity index 78% rename from .mokogitea/workflows/pr-metadata-check.yml rename to .mokogit/.mokogitea/workflows/pr-metadata-check.yml index a706c41..01d4ddc 100644 --- a/.mokogitea/workflows/pr-metadata-check.yml +++ b/.mokogit/.mokogitea/workflows/pr-metadata-check.yml @@ -3,12 +3,12 @@ # SPDX-License-Identifier: GPL-3.0-or-later # # FILE INFORMATION -# DEFGROUP: MokoGitea.Workflow +# DEFGROUP: MokoGIT.Workflow # INGROUP: MokoCLI.Validation # REPO: https://git.mokoconsulting.tech/MokoConsulting/mokocli # PATH: /templates/workflows/joomla/pr-metadata-check.yml.template # VERSION: 01.00.00 -# BRIEF: Validate MokoGitea metadata matches Joomla extension manifest on PRs +# BRIEF: Validate MokoGIT metadata matches Joomla extension manifest on PRs name: "Joomla: Metadata Validation" @@ -20,9 +20,9 @@ permissions: contents: read env: - MOKOGITEA_URL: ${{ vars.GITEA_URL || 'https://git.mokoconsulting.tech' }} - GITEA_ORG: ${{ vars.GITEA_ORG || github.repository_owner }} - GITEA_REPO: ${{ vars.GITEA_REPO || github.event.repository.name }} + MOKOGIT_URL: ${{ vars.GITEA_URL || 'https://git.mokoconsulting.tech' }} + GIT_ORG: ${{ vars.GITEA_ORG || github.repository_owner }} + GIT_REPO: ${{ vars.GITEA_REPO || github.event.repository.name }} jobs: validate-metadata: @@ -37,7 +37,7 @@ jobs: - name: Setup MokoCLI tools env: - MOKO_CLONE_TOKEN: ${{ secrets.MOKOGITEA_TOKEN }} + MOKO_CLONE_TOKEN: ${{ secrets.MOKOGIT_TOKEN }} MOKO_CLONE_HOST: git.mokoconsulting.tech/MokoConsulting run: | if [ -f /opt/mokocli/cli/joomla_metadata_validate.php ] && [ -f /opt/mokocli/vendor/autoload.php ]; then @@ -57,14 +57,14 @@ jobs: - name: Validate metadata against Joomla manifest env: - MOKOGITEA_TOKEN: ${{ secrets.MOKOGITEA_TOKEN }} + MOKOGIT_TOKEN: ${{ secrets.MOKOGIT_TOKEN }} run: | php ${MOKO_CLI}/joomla_metadata_validate.php \ --path . \ - --token "${MOKOGITEA_TOKEN}" \ - --org "${GITEA_ORG}" \ - --repo "${GITEA_REPO}" \ - --api-base "${MOKOGITEA_URL}/api/v1" \ + --token "${MOKOGIT_TOKEN}" \ + --org "${GIT_ORG}" \ + --repo "${GIT_REPO}" \ + --api-base "${MOKOGIT_URL}/api/v1" \ --ci if [ $? -ne 0 ]; then diff --git a/.mokogitea/workflows/pre-release.yml b/.mokogit/.mokogitea/workflows/pre-release.yml similarity index 86% rename from .mokogitea/workflows/pre-release.yml rename to .mokogit/.mokogitea/workflows/pre-release.yml index 2c4d3c9..a1e5b62 100644 --- a/.mokogitea/workflows/pre-release.yml +++ b/.mokogit/.mokogitea/workflows/pre-release.yml @@ -3,7 +3,7 @@ # SPDX-License-Identifier: GPL-3.0-or-later # # FILE INFORMATION -# DEFGROUP: MokoGitea.Workflow +# DEFGROUP: MokoGIT.Workflow # INGROUP: MokoCLI.Release # REPO: https://git.mokoconsulting.tech/MokoConsulting/mokocli # PATH: /templates/workflows/universal/pre-release.yml.template @@ -40,9 +40,9 @@ permissions: contents: write env: - GITEA_URL: ${{ vars.GITEA_URL || 'https://git.mokoconsulting.tech' }} - GITEA_ORG: ${{ vars.GITEA_ORG || github.repository_owner }} - GITEA_REPO: ${{ vars.GITEA_REPO || github.event.repository.name }} + GIT_URL: ${{ vars.GITEA_URL || 'https://git.mokoconsulting.tech' }} + GIT_ORG: ${{ vars.GITEA_ORG || github.repository_owner }} + GIT_REPO: ${{ vars.GITEA_REPO || github.event.repository.name }} jobs: build: @@ -61,7 +61,7 @@ jobs: uses: actions/checkout@v4 with: fetch-depth: 0 - token: ${{ secrets.MOKOGITEA_TOKEN }} + token: ${{ secrets.MOKOGIT_TOKEN }} ref: ${{ github.ref_name }} submodules: recursive @@ -71,7 +71,7 @@ jobs: - name: Setup MokoCLI tools env: - MOKO_CLONE_TOKEN: ${{ secrets.MOKOGITEA_TOKEN }} + MOKO_CLONE_TOKEN: ${{ secrets.MOKOGIT_TOKEN }} MOKO_CLONE_HOST: git.mokoconsulting.tech/MokoConsulting run: | # Use pre-installed /opt/mokocli if available (updated by cron every 6h) @@ -156,9 +156,9 @@ jobs: fi # Commit version bump - git config --local user.email "mokogitea-actions[bot]@mokoconsulting.tech" - git config --local user.name "mokogitea-actions[bot]" - git remote set-url origin "https://x-access-token:${{ secrets.MOKOGITEA_TOKEN }}@git.mokoconsulting.tech/${{ github.repository }}.git" + git config --local user.email "mokogit-actions[bot]@mokoconsulting.tech" + git config --local user.name "mokogit-actions[bot]" + git remote set-url origin "https://x-access-token:${{ secrets.MOKOGIT_TOKEN }}@git.mokoconsulting.tech/${{ github.repository }}.git" git add -A git diff --cached --quiet || { git commit -m "chore(version): pre-release bump to ${VERSION} [skip ci]" @@ -168,12 +168,12 @@ jobs: # Auto-detect element via manifest_element.php php ${MOKO_CLI}/manifest_element.php \ --path . --version "$VERSION" --stability "$STABILITY" \ - --repo "${GITEA_REPO}" --github-output + --repo "${GIT_REPO}" --github-output # Read back element outputs EXT_ELEMENT=$(grep '^ext_element=' "$GITHUB_OUTPUT" | tail -1 | cut -d= -f2) ZIP_NAME=$(grep '^zip_name=' "$GITHUB_OUTPUT" | tail -1 | cut -d= -f2) - [ -z "$EXT_ELEMENT" ] && EXT_ELEMENT=$(echo "${GITEA_REPO}" | tr '[:upper:]' '[:lower:]' | tr -d ' -') + [ -z "$EXT_ELEMENT" ] && EXT_ELEMENT=$(echo "${GIT_REPO}" | tr '[:upper:]' '[:lower:]' | tr -d ' -') [ -z "$ZIP_NAME" ] && ZIP_NAME="${EXT_ELEMENT}-${VERSION}.zip" echo "version=${VERSION}" >> "$GITHUB_OUTPUT" @@ -191,18 +191,18 @@ jobs: run: | TAG="${{ steps.meta.outputs.tag }}" VERSION="${{ steps.meta.outputs.version }}" - API_BASE="${GITEA_URL}/api/v1/repos/${GITEA_ORG}/${GITEA_REPO}" + API_BASE="${GIT_URL}/api/v1/repos/${GIT_ORG}/${GIT_REPO}" php ${MOKO_CLI}/release_create.php \ --path . --version "$VERSION" --tag "$TAG" \ - --token "${{ secrets.MOKOGITEA_TOKEN }}" --api-base "$API_BASE" \ - --repo "${GITEA_REPO}" --branch "${{ github.ref_name }}" --prerelease + --token "${{ secrets.MOKOGIT_TOKEN }}" --api-base "$API_BASE" \ + --repo "${GIT_REPO}" --branch "${{ github.ref_name }}" --prerelease - name: Update release notes from CHANGELOG.md if: steps.eligibility.outputs.proceed == 'true' run: | TAG="${{ steps.meta.outputs.tag }}" VERSION="${{ steps.meta.outputs.version }}" - API_BASE="${GITEA_URL}/api/v1/repos/${GITEA_ORG}/${GITEA_REPO}" + API_BASE="${GIT_URL}/api/v1/repos/${GIT_ORG}/${GIT_REPO}" # Extract [Unreleased] section from changelog (everything between [Unreleased] and next ## heading) if [ -f "CHANGELOG.md" ]; then @@ -213,7 +213,7 @@ jobs: fi # Update release body via API - RELEASE_ID=$(curl -sf -H "Authorization: token ${{ secrets.MOKOGITEA_TOKEN }}" \ + RELEASE_ID=$(curl -sf -H "Authorization: token ${{ secrets.MOKOGIT_TOKEN }}" \ "${API_BASE}/releases/tags/${TAG}" | python3 -c "import json,sys; print(json.load(sys.stdin).get('id',''))" 2>/dev/null || true) if [ -n "$RELEASE_ID" ]; then @@ -225,7 +225,7 @@ jobs: '${API_BASE}/releases/${RELEASE_ID}', data=payload, method='PATCH', headers={ - 'Authorization': 'token ${{ secrets.MOKOGITEA_TOKEN }}', + 'Authorization': 'token ${{ secrets.MOKOGIT_TOKEN }}', 'Content-Type': 'application/json' }) urllib.request.urlopen(req) @@ -239,21 +239,21 @@ jobs: run: | VERSION="${{ steps.meta.outputs.version }}" TAG="${{ steps.meta.outputs.tag }}" - API_BASE="${GITEA_URL}/api/v1/repos/${GITEA_ORG}/${GITEA_REPO}" + API_BASE="${GIT_URL}/api/v1/repos/${GIT_ORG}/${GIT_REPO}" php ${MOKO_CLI}/release_package.php \ --path . --version "$VERSION" --tag "$TAG" \ - --token "${{ secrets.MOKOGITEA_TOKEN }}" --api-base "$API_BASE" \ - --repo "${GITEA_REPO}" --output /tmp || true + --token "${{ secrets.MOKOGIT_TOKEN }}" --api-base "$API_BASE" \ + --repo "${GIT_REPO}" --output /tmp || true - # updates.xml is generated dynamically by MokoGitea license server + # updates.xml is generated dynamically by MokoGIT license server # No need to build, commit, or sync updates.xml from workflows - name: "Delete lesser pre-release channels (cascade)" if: steps.eligibility.outputs.proceed == 'true' continue-on-error: true run: | - API_BASE="${GITEA_URL}/api/v1/repos/${GITEA_ORG}/${GITEA_REPO}" - TOKEN="${{ secrets.MOKOGITEA_TOKEN }}" + API_BASE="${GIT_URL}/api/v1/repos/${GIT_ORG}/${GIT_REPO}" + TOKEN="${{ secrets.MOKOGIT_TOKEN }}" php ${MOKO_CLI}/release_cascade.php \ --stability "${{ steps.meta.outputs.stability }}" \ diff --git a/.mokogitea/workflows/rc-revert.yml b/.mokogit/.mokogitea/workflows/rc-revert.yml similarity index 90% rename from .mokogitea/workflows/rc-revert.yml rename to .mokogit/.mokogitea/workflows/rc-revert.yml index 8874441..e28d4bb 100644 --- a/.mokogitea/workflows/rc-revert.yml +++ b/.mokogit/.mokogitea/workflows/rc-revert.yml @@ -3,10 +3,10 @@ # SPDX-License-Identifier: GPL-3.0-or-later # # FILE INFORMATION -# DEFGROUP: MokoGitea.Workflow +# DEFGROUP: MokoGIT.Workflow # INGROUP: MokoCLI.Universal # REPO: https://git.mokoconsulting.tech/MokoConsulting/mokocli -# PATH: /.mokogitea/workflows/rc-revert.yml +# PATH: /.mokogit/workflows/rc-revert.yml # VERSION: 09.23.00 # BRIEF: Rename rc/ branch back to dev/ when PR is closed without merge @@ -32,8 +32,8 @@ jobs: env: BRANCH: ${{ github.event.pull_request.head.ref }} REPO: ${{ github.repository }} - GITEA_URL: ${{ vars.GITEA_URL || 'https://git.mokoconsulting.tech' }} - TOKEN: ${{ secrets.MOKOGITEA_TOKEN }} + GIT_URL: ${{ vars.GITEA_URL || 'https://git.mokoconsulting.tech' }} + TOKEN: ${{ secrets.MOKOGIT_TOKEN }} run: | set -euo pipefail # BRANCH is attacker-controlled (PR head ref). Strict allowlist before ANY use. @@ -42,7 +42,7 @@ jobs: fi SUFFIX="${BRANCH#rc/}" DEV_BRANCH="dev/${SUFFIX}" - API="${GITEA_URL}/api/v1/repos/${REPO}/branches" + API="${GIT_URL}/api/v1/repos/${REPO}/branches" # Create dev/ branch from rc/ branch STATUS=$(curl -sf -o /dev/null -w "%{http_code}" -X POST \ diff --git a/.mokogitea/workflows/repo-health.yml b/.mokogit/.mokogitea/workflows/repo-health.yml similarity index 98% rename from .mokogitea/workflows/repo-health.yml rename to .mokogit/.mokogitea/workflows/repo-health.yml index 31736e8..dbf433b 100644 --- a/.mokogitea/workflows/repo-health.yml +++ b/.mokogit/.mokogitea/workflows/repo-health.yml @@ -6,7 +6,7 @@ # SPDX-License-Identifier: GPL-3.0-or-later # # FILE INFORMATION -# DEFGROUP: MokoGitea.Workflow +# DEFGROUP: MokoGIT.Workflow # INGROUP: MokoCLI.Validation # REPO: https://git.mokoconsulting.tech/MokoConsulting/mokocli # PATH: /templates/workflows/joomla/repo_health.yml.template @@ -45,7 +45,7 @@ env: SCRIPTS_ALLOWED_DIRS: scripts,scripts/fix,scripts/lib,scripts/release,scripts/run,scripts/validate # Repo health policy - REPO_REQUIRED_ARTIFACTS: README.md,LICENSE,CHANGELOG.md,CONTRIBUTING.md,CODE_OF_CONDUCT.md,.mokogitea/workflows/ + REPO_REQUIRED_ARTIFACTS: README.md,LICENSE,CHANGELOG.md,CONTRIBUTING.md,CODE_OF_CONDUCT.md,.mokogit/workflows/ REPO_OPTIONAL_FILES: SECURITY.md,GOVERNANCE.md,.editorconfig,.gitattributes,.gitignore,README.md,docs/ REPO_DISALLOWED_DIRS: REPO_DISALLOWED_FILES: TODO.md,todo.md @@ -56,7 +56,7 @@ env: # File / directory variables DOCS_INDEX: docs/docs-index.md SCRIPT_DIR: scripts - WORKFLOWS_DIR: .mokogitea/workflows + WORKFLOWS_DIR: .mokogit/workflows SHELLCHECK_PATTERN: '*.sh' SPDX_FILE_GLOBS: '*.sh,*.php,*.js,*.ts,*.css,*.xml,*.yml,*.yaml' FORCE_JAVASCRIPT_ACTIONS_TO_NODE24: true @@ -77,7 +77,7 @@ jobs: - name: Check actor permission (admin only) id: perm env: - TOKEN: ${{ secrets.MOKOGITEA_TOKEN || github.token }} + TOKEN: ${{ secrets.MOKOGIT_TOKEN || github.token }} REPO: ${{ github.repository }} ACTOR: ${{ github.actor }} run: | @@ -88,14 +88,14 @@ jobs: # Hardcoded authorized users — always allowed case "$ACTOR" in - jmiller|mokogitea-actions[bot]) + jmiller|mokogit-actions[bot]) ALLOWED=true PERMISSION=admin METHOD="hardcoded allowlist" ;; *) # Detect platform and check permissions via API - API_BASE="${GITHUB_API_URL:-${GITEA_API_URL:-https://api.github.com}}" + API_BASE="${GITHUB_API_URL:-${GIT_API_URL:-https://api.github.com}}" RESP=$(curl -sf -H "Authorization: token ${TOKEN}" \ "${API_BASE}/repos/${REPO}/collaborators/${ACTOR}/permission" 2>/dev/null || echo '{}') PERMISSION=$(echo "$RESP" | grep -oP '"permission"\s*:\s*"\K[^"]+' || echo "unknown") @@ -605,7 +605,7 @@ jobs: printf '%s\n' '| Domain | Status | Notes |' printf '%s\n' '|---|---|---|' printf '%s\n' '| Access control | OK | Admin-only execution gate |' - printf '%s\n' '| Release policy | N/A | Releases handled by MokoGitea |' + printf '%s\n' '| Release policy | N/A | Releases handled by MokoGIT |' printf '%s\n' '| Scripts governance | OK | Directory policy and advisory reporting |' printf '%s\n' '| Repo required artifacts | OK | Required, optional, disallowed enforcement |' printf '%s\n' '| Repo content heuristics | OK | Brand, license, changelog structure |' @@ -677,7 +677,7 @@ jobs: if: >- always() && needs.scripts_governance.result == 'failure' - uses: ./.mokogitea/workflows/ci-issue-reporter.yml + uses: ./.mokogit/workflows/ci-issue-reporter.yml with: gate: "Scripts Governance" workflow: "Repo Health" @@ -691,7 +691,7 @@ jobs: if: >- always() && needs.repo_health.result == 'failure' - uses: ./.mokogitea/workflows/ci-issue-reporter.yml + uses: ./.mokogit/workflows/ci-issue-reporter.yml with: gate: "Repository Health" workflow: "Repo Health" diff --git a/.mokogitea/workflows/standards-compliance.yml b/.mokogit/.mokogitea/workflows/standards-compliance.yml similarity index 98% rename from .mokogitea/workflows/standards-compliance.yml rename to .mokogit/.mokogitea/workflows/standards-compliance.yml index 2a7abc3..4a8d9d6 100644 --- a/.mokogitea/workflows/standards-compliance.yml +++ b/.mokogit/.mokogitea/workflows/standards-compliance.yml @@ -4,7 +4,7 @@ # DEFGROUP: GitHub.Workflow # INGROUP: MokoCLI.Compliance # REPO: https://github.com/mokoconsulting-tech/mokocli -# PATH: /.mokogitea/workflows/standards-compliance.yml +# PATH: /.mokogit/workflows/standards-compliance.yml # VERSION: 04.06.00 # BRIEF: MokoCLI compliance validation workflow # NOTE: Validates repository structure, documentation, and coding standards @@ -299,7 +299,7 @@ jobs: echo "|-----------|--------|-------|------|-------|" >> $GITHUB_STEP_SUMMARY # Check required directories - for dir in .mokogitea; do + for dir in .mokogit; do if [ -d "$dir" ]; then FILE_COUNT=$(find "$dir" -type f 2>/dev/null | wc -l) DIR_SIZE=$(du -sh "$dir" 2>/dev/null | cut -f1) @@ -320,7 +320,7 @@ jobs: echo "### 🔴 Critical Issues: $MISSING" >> $GITHUB_STEP_SUMMARY echo "" >> $GITHUB_STEP_SUMMARY echo "**Remediation Steps:**" >> $GITHUB_STEP_SUMMARY - [ ! -d ".mokogitea" ] && echo "- Create .mokogitea directory: \`mkdir -p .mokogitea/workflows\`" >> $GITHUB_STEP_SUMMARY + [ ! -d ".mokogit" ] && echo "- Create .mokogit directory: \`mkdir -p .mokogit/workflows\`" >> $GITHUB_STEP_SUMMARY echo "" >> $GITHUB_STEP_SUMMARY echo "📚 Reference: [MokoCLI Repository Structure](https://github.com/mokoconsulting-tech/mokocli/tree/main/docs/policy/core-structure.md)" >> $GITHUB_STEP_SUMMARY echo "" >> $GITHUB_STEP_SUMMARY @@ -563,17 +563,17 @@ jobs: set -x echo "### GitHub Actions Workflows" >> $GITHUB_STEP_SUMMARY - WORKFLOWS_DIR=".mokogitea/workflows" + WORKFLOWS_DIR=".mokogit/workflows" if [ ! -d "$WORKFLOWS_DIR" ]; then echo "❌ No workflows directory found" >> $GITHUB_STEP_SUMMARY echo "" >> $GITHUB_STEP_SUMMARY echo "### ❌ Validation Failed: Workflows Directory Missing" >> $GITHUB_STEP_SUMMARY echo "" >> $GITHUB_STEP_SUMMARY - echo "**Error:** .mokogitea/workflows directory is required for CI/CD automation" >> $GITHUB_STEP_SUMMARY - echo "**Action Required:** Create .mokogitea/workflows directory and add GitHub Actions workflows" >> $GITHUB_STEP_SUMMARY + echo "**Error:** .mokogit/workflows directory is required for CI/CD automation" >> $GITHUB_STEP_SUMMARY + echo "**Action Required:** Create .mokogit/workflows directory and add GitHub Actions workflows" >> $GITHUB_STEP_SUMMARY echo "" - echo "❌ ERROR: .mokogitea/workflows directory not found" + echo "❌ ERROR: .mokogit/workflows directory not found" exit 1 fi @@ -612,7 +612,7 @@ jobs: echo "### Workflow YAML Syntax" >> $GITHUB_STEP_SUMMARY INVALID=0 - for workflow in $(find .mokogitea/workflows -maxdepth 1 -type f \( -name "*.yml" -o -name "*.yaml" \) 2>/dev/null); do + for workflow in $(find .mokogit/workflows -maxdepth 1 -type f \( -name "*.yml" -o -name "*.yaml" \) 2>/dev/null); do if [ -f "$workflow" ]; then if python3 -c "import yaml, sys; yaml.safe_load(open(sys.argv[1]))" "$workflow" 2>/dev/null; then echo "✅ $(basename $workflow)" >> $GITHUB_STEP_SUMMARY @@ -629,7 +629,7 @@ jobs: echo "" >> $GITHUB_STEP_SUMMARY echo "**Error:** $INVALID workflow file(s) have invalid YAML syntax" >> $GITHUB_STEP_SUMMARY echo "**Action Required:** Fix YAML syntax errors in the marked workflow files" >> $GITHUB_STEP_SUMMARY - echo "**Tool:** Run \`python3 -c \"import yaml; yaml.safe_load(open('.mokogitea/workflows/FILE.yml'))\"\` locally" >> $GITHUB_STEP_SUMMARY + echo "**Tool:** Run \`python3 -c \"import yaml; yaml.safe_load(open('.mokogit/workflows/FILE.yml'))\"\` locally" >> $GITHUB_STEP_SUMMARY echo "" echo "❌ ERROR: $INVALID workflow file(s) with invalid YAML syntax" exit 1 @@ -641,7 +641,7 @@ jobs: echo "✅ SUCCESS: All workflow files passed YAML validation" - name: Validate CodeQL Configuration - if: hashFiles('.mokogitea/workflows/codeql-analysis.yml') != '' + if: hashFiles('.mokogit/workflows/codeql-analysis.yml') != '' run: | set -e echo "" >> $GITHUB_STEP_SUMMARY @@ -649,7 +649,7 @@ jobs: echo "" >> $GITHUB_STEP_SUMMARY # Inline validation (rewritten from Python to bash for PHP-only architecture) - CODEQL_FILE=".mokogitea/workflows/codeql-analysis.yml" + CODEQL_FILE=".mokogit/workflows/codeql-analysis.yml" if [ ! -f "$CODEQL_FILE" ]; then echo "⚠️ CodeQL workflow file not found" >> $GITHUB_STEP_SUMMARY @@ -1186,7 +1186,7 @@ jobs: fi # Run yamllint and count line-length warnings - YAML_OUTPUT=$(yamllint .mokogitea/workflows/*.yml 2>&1 | grep "line too long" || true) + YAML_OUTPUT=$(yamllint .mokogit/workflows/*.yml 2>&1 | grep "line too long" || true) if [ -n "$YAML_OUTPUT" ]; then YAML_VIOLATIONS=$(echo "$YAML_OUTPUT" | wc -l) echo "⚠️ Found $YAML_VIOLATIONS lines exceeding 180 characters in YAML files" >> $GITHUB_STEP_SUMMARY @@ -2130,17 +2130,17 @@ jobs: WARNINGS=0 ERRORS=0 - # 1. Check .mokogitea/config.tf location (not root override files) + # 1. Check .mokogit/config.tf location (not root override files) echo "### Override Configuration Check" >> $GITHUB_STEP_SUMMARY LEGACY_OVERRIDES=$(find . -maxdepth 1 -name "*override*.tf" -o -name "MokoCLI.override.tf" 2>/dev/null | wc -l || echo 0) if [ "$LEGACY_OVERRIDES" -gt 0 ]; then echo "⚠️ Found legacy override files in root directory" >> $GITHUB_STEP_SUMMARY - echo "**Expected Location**: .mokogitea/config.tf" >> $GITHUB_STEP_SUMMARY + echo "**Expected Location**: .mokogit/config.tf" >> $GITHUB_STEP_SUMMARY echo "**Legacy files found**: $LEGACY_OVERRIDES" >> $GITHUB_STEP_SUMMARY WARNINGS=$((WARNINGS + 1)) else - if [ -f ".mokogitea/config.tf" ]; then - echo "✅ Override configuration in correct location (.mokogitea/config.tf)" >> $GITHUB_STEP_SUMMARY + if [ -f ".mokogit/config.tf" ]; then + echo "✅ Override configuration in correct location (.mokogit/config.tf)" >> $GITHUB_STEP_SUMMARY else echo "ℹ️ No override configuration found" >> $GITHUB_STEP_SUMMARY fi diff --git a/.mokogitea/workflows/version-set.yml b/.mokogit/.mokogitea/workflows/version-set.yml similarity index 96% rename from .mokogitea/workflows/version-set.yml rename to .mokogit/.mokogitea/workflows/version-set.yml index 172c085..d451b9b 100644 --- a/.mokogitea/workflows/version-set.yml +++ b/.mokogit/.mokogitea/workflows/version-set.yml @@ -3,10 +3,10 @@ # SPDX-License-Identifier: GPL-3.0-or-later # # FILE INFORMATION -# DEFGROUP: MokoGitea.Workflow.Template +# DEFGROUP: MokoGIT.Workflow.Template # INGROUP: MokoCLI.CI # REPO: https://git.mokoconsulting.tech/MokoConsulting/Template-Joomla -# PATH: /.mokogitea/workflows/version-set.yml +# PATH: /.mokogit/workflows/version-set.yml # VERSION: 01.00.00 # BRIEF: Set or reset the extension version across all version-bearing files @@ -48,7 +48,7 @@ jobs: - name: Checkout uses: actions/checkout@v4 with: - token: ${{ secrets.MOKOGITEA_TOKEN || github.token }} + token: ${{ secrets.MOKOGIT_TOKEN || github.token }} ref: ${{ inputs.branch || github.ref }} fetch-depth: 1 diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 73f36d9..2cb5400 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -34,7 +34,7 @@ feature/* ──PR──> dev ──draft PR──> (renamed to rc) ──merge 7. **Merging to main** triggers the stable release pipeline: - Minor version bump (e.g., `02.09.xx` → `02.10.00`) - Stability suffix stripped (clean version) - - MokoGitea release created with ZIP/tar.gz packages + - MokoGIT release created with ZIP/tar.gz packages - `updates.xml` updated (Joomla extensions) - `dev` branch recreated from `main` @@ -119,7 +119,7 @@ This ensures Joomla sites on ANY stability channel see the update (Joomla only s The version tools update all files containing version stamps: -- `.mokogitea/manifest.xml` (canonical source) +- `.mokogit/manifest.xml` (canonical source) - Joomla XML manifests (`` tag) - `README.md`, `CHANGELOG.md` (`VERSION:` pattern) - `package.json`, `pyproject.toml` diff --git a/README.md b/README.md index ba00d91..301b248 100644 --- a/README.md +++ b/README.md @@ -17,7 +17,7 @@ A modern, lightweight Joomla site template built on Cassiopeia with Font Awesome | **PHP** | 8.3+ | | **License** | GPL-3.0-or-later | | **Replaces** | MokoCassiopeia (auto-migrates on install) | -| **Repository** | [MokoGitea](https://git.mokoconsulting.tech/MokoConsulting/MokoOnyx) (primary) | +| **Repository** | [MokoGIT](https://git.mokoconsulting.tech/MokoConsulting/MokoOnyx) (primary) | --- @@ -95,7 +95,7 @@ Key parameters include: --- -> **[MokoStandards](https://git.mokoconsulting.tech/MokoConsulting/.mokogitea/wiki)** -- central standards hub for all Moko Consulting projects. +> **[MokoStandards](https://git.mokoconsulting.tech/MokoConsulting/.mokogit/wiki)** -- central standards hub for all Moko Consulting projects. --- @@ -117,4 +117,4 @@ This project is licensed under the GNU General Public License v3.0 or later -- s --- -*[Moko Consulting](https://mokoconsulting.tech) -- [MokoStandards](https://git.mokoconsulting.tech/MokoConsulting/.mokogitea/wiki)* +*[Moko Consulting](https://mokoconsulting.tech) -- [MokoStandards](https://git.mokoconsulting.tech/MokoConsulting/.mokogit/wiki)* diff --git a/source/language/en-GB/tpl_mokoonyx.sys.ini b/source/language/en-GB/tpl_mokoonyx.sys.ini index 3657ef8..4fe1b58 100644 --- a/source/language/en-GB/tpl_mokoonyx.sys.ini +++ b/source/language/en-GB/tpl_mokoonyx.sys.ini @@ -28,4 +28,4 @@ TPL_MOKOONYX_POSITION_TOP_B="Top-b" TPL_MOKOONYX_POSITION_TOPBAR="Top Bar" TPL_MOKOONYX_POSITION_DRAWER_LEFT="Drawer-Left" TPL_MOKOONYX_POSITION_DRAWER_RIGHT="Drawer-Right" -TPL_MOKOONYX_XML_DESCRIPTION="

\"Version\" \"License\" \"Joomla\" \"PHP\"

MokoOnyx Template Description

MokoOnyx continues Joomla’s tradition of space-themed default templates— building on the legacy of Solarflare (Joomla 1.0), Milkyway (Joomla 1.5), and Protostar (Joomla 3.0).

This template is a customized fork of the Cassiopeia template introduced in Joomla 4, preserving its modern, accessible, and mobile-first foundation while introducing new stylistic enhancements and structural refinements specifically tailored for use by Moko Consulting.

Custom Colour Themes

Starter palette files are included with the template. To create a custom colour scheme, copy templates/mokoonyx/templates/light.custom.css to media/templates/site/mokoonyx/css/theme/light.custom.css, or templates/mokoonyx/templates/dark.custom.css to media/templates/site/mokoonyx/css/theme/dark.custom.css. Customise the CSS variables to match your brand, then activate your palette in System → Site Templates → MokoOnyx → Theme tab by selecting "Custom" for the Light or Dark Mode Palette. A full variable reference is available in the CSS Variables tab in template options.

Custom CSS & JavaScript

For site-specific styles and scripts that should survive template updates, create the following files:

  • media/templates/site/mokoonyx/css/user.css — loaded on every page for custom CSS overrides.
  • media/templates/site/mokoonyx/js/user.js — loaded on every page for custom JavaScript.

These files are gitignored and will not be overwritten by template updates.

Code Attribution

This template is based on the original Cassiopeia template developed by the Joomla! Project and released under the GNU General Public License.

Modifications and enhancements have been made by Moko Consulting in accordance with open-source licensing standards.

It includes integration with Bootstrap TOC, an open-source table of contents generator by A. Feld, licensed under the MIT License.

All third-party libraries and assets remain the property of their respective authors and are credited within their source files where applicable.

" +TPL_MOKOONYX_XML_DESCRIPTION="

\"Version\" \"License\" \"Joomla\" \"PHP\"

MokoOnyx Template Description

MokoOnyx continues Joomla’s tradition of space-themed default templates— building on the legacy of Solarflare (Joomla 1.0), Milkyway (Joomla 1.5), and Protostar (Joomla 3.0).

This template is a customized fork of the Cassiopeia template introduced in Joomla 4, preserving its modern, accessible, and mobile-first foundation while introducing new stylistic enhancements and structural refinements specifically tailored for use by Moko Consulting.

Custom Colour Themes

Starter palette files are included with the template. To create a custom colour scheme, copy templates/mokoonyx/templates/light.custom.css to media/templates/site/mokoonyx/css/theme/light.custom.css, or templates/mokoonyx/templates/dark.custom.css to media/templates/site/mokoonyx/css/theme/dark.custom.css. Customise the CSS variables to match your brand, then activate your palette in System → Site Templates → MokoOnyx → Theme tab by selecting "Custom" for the Light or Dark Mode Palette. A full variable reference is available in the CSS Variables tab in template options.

Custom CSS & JavaScript

For site-specific styles and scripts that should survive template updates, create the following files:

  • media/templates/site/mokoonyx/css/user.css — loaded on every page for custom CSS overrides.
  • media/templates/site/mokoonyx/js/user.js — loaded on every page for custom JavaScript.

These files are gitignored and will not be overwritten by template updates.

Code Attribution

This template is based on the original Cassiopeia template developed by the Joomla! Project and released under the GNU General Public License.

Modifications and enhancements have been made by Moko Consulting in accordance with open-source licensing standards.

It includes integration with Bootstrap TOC, an open-source table of contents generator by A. Feld, licensed under the MIT License.

All third-party libraries and assets remain the property of their respective authors and are credited within their source files where applicable.

" diff --git a/source/templateDetails.xml b/source/templateDetails.xml index ce2bf24..b5aeab8 100644 --- a/source/templateDetails.xml +++ b/source/templateDetails.xml @@ -41,7 +41,7 @@ Jonathan Miller || Moko Consulting hello@mokoconsulting.tech (C)GNU General Public License Version 3 - 2026 Moko Consulting - Version License Joomla PHP

MokoOnyx

MokoOnyx is a modern, lightweight enhancement layer built on Joomla's Cassiopeia template. It adds Font Awesome 7, Bootstrap 5 helpers, automatic Table of Contents, advanced Dark Mode theming, and optional Google Tag Manager / GA4 integration — all with minimal core overrides for maximum upgrade compatibility.

Custom Colour Themes

Copy templates/mokoonyx/templates/light.custom.css to media/templates/site/mokoonyx/css/theme/light.custom.css (or dark equivalent), customise the CSS variables, then select "Custom" in the Theme tab.

Custom CSS & JavaScript

  • media/templates/site/mokoonyx/css/user.css — custom CSS overrides
  • media/templates/site/mokoonyx/js/user.js — custom JavaScript

These files survive template updates.

]]>
+ Version License Joomla PHP

MokoOnyx

MokoOnyx is a modern, lightweight enhancement layer built on Joomla's Cassiopeia template. It adds Font Awesome 7, Bootstrap 5 helpers, automatic Table of Contents, advanced Dark Mode theming, and optional Google Tag Manager / GA4 integration — all with minimal core overrides for maximum upgrade compatibility.

Custom Colour Themes

Copy templates/mokoonyx/templates/light.custom.css to media/templates/site/mokoonyx/css/theme/light.custom.css (or dark equivalent), customise the CSS variables, then select "Custom" in the Theme tab.

Custom CSS & JavaScript

  • media/templates/site/mokoonyx/css/user.css — custom CSS overrides
  • media/templates/site/mokoonyx/js/user.js — custom JavaScript

These files survive template updates.

]]>
8.1.0 1 diff --git a/wiki/development.md b/wiki/development.md index b001b02..a293581 100644 --- a/wiki/development.md +++ b/wiki/development.md @@ -144,7 +144,7 @@ After the release package is built: 1. Tag the release: `git tag {version}` 2. Push tags: `git push origin --tags` -3. Create a MokoGitea release and attach the ZIP from `dist/` +3. Create a MokoGIT release and attach the ZIP from `dist/` ### Generate checksums @@ -185,7 +185,7 @@ Creates SHA-256 checksums for all ZIP files in `dist/`. ## Contributing -1. Fork the repository on [MokoGitea](https://git.mokoconsulting.tech/MokoConsulting/MokoOnyx) +1. Fork the repository on [MokoGIT](https://git.mokoconsulting.tech/MokoConsulting/MokoOnyx) 2. Create a feature branch from `dev` 3. Make your changes in `src/` 4. Run `make validate` to ensure all checks pass @@ -245,7 +245,7 @@ When a PR is merged from `dev` to `main`: 1. The minor version is bumped (e.g., `02.08.xx` -> `02.09.00`) 2. Stability suffixes are stripped (stable release) -3. A MokoGitea release is created with the build package (ZIP + tar.gz + SHA-256) +3. A MokoGIT release is created with the build package (ZIP + tar.gz + SHA-256) 4. `updates.xml` is updated for the Joomla update server 5. The `dev` branch is recreated from `main` 6. A `version/XX.YY.ZZ` archive branch is created diff --git a/wiki/guides/installation.md b/wiki/guides/installation.md index e9702ba..4a0e779 100644 --- a/wiki/guides/installation.md +++ b/wiki/guides/installation.md @@ -50,7 +50,7 @@ MokoOnyx includes an automatic update server. Joomla will notify you when new ve | Priority | Server | |----------|--------| -| 1 | Gitea (git.mokoconsulting.tech) | +| 1 | Git (git.mokoconsulting.tech) | | 2 | GitHub (github.com) | --- diff --git a/wiki/home.md b/wiki/home.md index 5e35f0f..fe01b7e 100644 --- a/wiki/home.md +++ b/wiki/home.md @@ -12,7 +12,7 @@ A modern, lightweight Joomla site template built on Cassiopeia with Font Awesome | **PHP** | 8.1+ | | **License** | GPL-3.0-or-later | | **Replaces** | MokoCassiopeia (auto-migrates on install) | -| **Platform** | [MokoGitea](https://git.mokoconsulting.tech/MokoConsulting/MokoOnyx) (primary) | +| **Platform** | [MokoGIT](https://git.mokoconsulting.tech/MokoConsulting/MokoOnyx) (primary) | --- diff --git a/wiki/installation.md b/wiki/installation.md index 51f024b..a23bed8 100644 --- a/wiki/installation.md +++ b/wiki/installation.md @@ -50,7 +50,7 @@ MokoOnyx includes an automatic update server. Joomla will notify you when new ve | Priority | Server | |----------|--------| -| 1 | MokoGitea (git.mokoconsulting.tech) | +| 1 | MokoGIT (git.mokoconsulting.tech) | | 2 | GitHub (github.com) | --- diff --git a/wiki/reference/contributing.md b/wiki/reference/contributing.md index 9da3454..df85214 100644 --- a/wiki/reference/contributing.md +++ b/wiki/reference/contributing.md @@ -70,7 +70,7 @@ Commit messages should: ## Reporting Issues -Bug reports and enhancement requests should be filed as Gitea issues and include: +Bug reports and enhancement requests should be filed as Git issues and include: * Clear reproduction steps or use cases * Expected versus actual behavior diff --git a/wiki/reference/development.md b/wiki/reference/development.md index d2b983a..b338446 100644 --- a/wiki/reference/development.md +++ b/wiki/reference/development.md @@ -144,7 +144,7 @@ After the release package is built: 1. Tag the release: `git tag {version}` 2. Push tags: `git push origin --tags` -3. Create a Gitea release and attach the ZIP from `dist/` +3. Create a Git release and attach the ZIP from `dist/` ### Generate checksums @@ -185,7 +185,7 @@ Creates SHA-256 checksums for all ZIP files in `dist/`. ## Contributing -1. Fork the repository on [Gitea](https://git.mokoconsulting.tech/MokoConsulting/MokoOnyx) +1. Fork the repository on [Git](https://git.mokoconsulting.tech/MokoConsulting/MokoOnyx) 2. Create a feature branch from `dev` 3. Make your changes in `src/` 4. Run `make validate` to ensure all checks pass @@ -245,7 +245,7 @@ When a PR is merged from `dev` to `main`: 1. The minor version is bumped (e.g., `02.08.xx` -> `02.09.00`) 2. Stability suffixes are stripped (stable release) -3. A Gitea release is created with the build package (ZIP + tar.gz + SHA-256) +3. A Git release is created with the build package (ZIP + tar.gz + SHA-256) 4. `updates.xml` is updated for the Joomla update server 5. The `dev` branch is recreated from `main` 6. A `version/XX.YY.ZZ` archive branch is created diff --git a/wiki/unnamed.md b/wiki/unnamed.md index aed06df..91a01a7 100644 --- a/wiki/unnamed.md +++ b/wiki/unnamed.md @@ -70,7 +70,7 @@ Commit messages should: ## Reporting Issues -Bug reports and enhancement requests should be filed as MokoGitea issues and include: +Bug reports and enhancement requests should be filed as MokoGIT issues and include: * Clear reproduction steps or use cases * Expected versus actual behavior