Scoped wiki publishing (MIL-014) and rename to git-workflows (MIL-015) #219

Merged
Tirsvad merged 13 commits from mil-014-scoped-wiki-publishing into main 2026-10-27 16:34:30 +01:00
33 changed files with 135 additions and 87 deletions
Showing only changes of commit 3e164afd1f - Show all commits
+17
View File
@@ -119,6 +119,23 @@ A change that spans repositories:
inside the accepted plan only if the plan names it; otherwise the run stops inside the accepted plan only if the plan names it; otherwise the run stops
and reports. and reports.
## Workflow adoption rules
When a workflow is added to this repository (`.gitea/workflows/`,
`.gitea/scoped_workflows/`) or a composite action to `actions/`, the same pull
request adds its rule for when a repository uses it in SQA and QC:
1. A row in `guides/adoption-rules.md` with the columns *Use when*, *Do not use
when* and *What it gives SQA and QC*. The condition is checkable from the
repository itself (a file type, a test report, a wiki folder), never
"when useful".
2. The workflow's guide and its README section link to that row, and the
README workflow table and count stay in step.
3. A workflow that applies to every repository (scoped) or only to this one
says so in the row instead of leaving it empty.
4. The rule is changed in the same pull request as the workflow when the
workflow's behaviour changes; the CHANGELOG entry names it.
## Workflow order ## Workflow order
Business Case, Stakeholder Analysis, Project Plan, milestones, tasks synced as Business Case, Stakeholder Analysis, Project Plan, milestones, tasks synced as
+4
View File
@@ -20,6 +20,10 @@ Each release lists its changes in these groups, in this order:
## [Unreleased] ## [Unreleased]
### Added
- The [adoption rules](guides/adoption-rules.md): for each workflow, when a repository uses it in SQA and QC. A new workflow adds its rule in the same pull request (`AGENTS.md`).
## [2.2.0] - 2026-10-21 ## [2.2.0] - 2026-10-21
### Added ### Added
+10 -8
View File
@@ -21,6 +21,8 @@ It contains ten workflows: metadata sync to the GitHub mirror, wiki publishing (
## 🔧 Workflows ## 🔧 Workflows
When a repository should use each workflow in its SQA and QC is set out in the [adoption rules](guides/adoption-rules.md).
Ten workflows live in this repository. A **scoped** workflow is delivered by the instance to every repository of the TirSystem organizations and needs nothing in the repository; a **reusable** workflow is called by a repository with `uses:`; the others run only here. The diagrams are PlantUML source. Ten workflows live in this repository. A **scoped** workflow is delivered by the instance to every repository of the TirSystem organizations and needs nothing in the repository; a **reusable** workflow is called by a repository with `uses:`; the others run only here. The diagrams are PlantUML source.
| Workflow | File | Kind | Starts on | Purpose | | Workflow | File | Kind | Starts on | Purpose |
@@ -104,7 +106,7 @@ deactivate Workflow
### ✅ Quality checks ### ✅ Quality checks
A reusable workflow for Python and shell, called with `uses: TirSystem/github-action/.gitea/workflows/quality-checks.yml@v1` (see the [guide](guides/quality-checks.md)). A reusable workflow for Python and shell, called with `uses: TirSystem/git-workflows/.gitea/workflows/quality-checks.yml@v1` (see the [guide](guides/quality-checks.md)).
#### 🔀 Workflow #### 🔀 Workflow
@@ -150,7 +152,7 @@ deactivate Workflow
### 🧱 Quality checks C++ ### 🧱 Quality checks C++
A reusable workflow for C and C++, called with `uses: TirSystem/github-action/.gitea/workflows/quality-checks-cpp.yml@v1` (ADR-0008). The repository needs a `.clang-format`; a `.clang-tidy` and a compile database are optional. A reusable workflow for C and C++, called with `uses: TirSystem/git-workflows/.gitea/workflows/quality-checks-cpp.yml@v1` (ADR-0008). The repository needs a `.clang-format`; a `.clang-tidy` and a compile database are optional.
#### 🔀 Workflow #### 🔀 Workflow
@@ -195,7 +197,7 @@ deactivate Workflow
### 🟣 Quality checks C# ### 🟣 Quality checks C#
A reusable workflow for C#, called with `uses: TirSystem/github-action/.gitea/workflows/quality-checks-csharp.yml@v1` (ADR-0008). It installs the exact .NET SDK given by `dotnet-sdk-version` (10 or later) and needs the network for the package restore. A reusable workflow for C#, called with `uses: TirSystem/git-workflows/.gitea/workflows/quality-checks-csharp.yml@v1` (ADR-0008). It installs the exact .NET SDK given by `dotnet-sdk-version` (10 or later) and needs the network for the package restore.
#### 🔀 Workflow #### 🔀 Workflow
@@ -240,7 +242,7 @@ deactivate Workflow
### 🏅 Code metrics ### 🏅 Code metrics
A reusable workflow that counts the code files and the lines of code (without comment and blank lines) of a repository and publishes them, with the test coverage, as three SVG badges on a `badges` branch, called with `uses: TirSystem/github-action/.gitea/workflows/code-metrics.yml@v2` (ADR-0010). It needs `contents: write` and runs no test: an earlier job of the caller produces a Cobertura XML coverage report and uploads it as an artifact ([guide](guides/code-metrics.md)). A reusable workflow that counts the code files and the lines of code (without comment and blank lines) of a repository and publishes them, with the test coverage, as three SVG badges on a `badges` branch, called with `uses: TirSystem/git-workflows/.gitea/workflows/code-metrics.yml@v2` (ADR-0010). It needs `contents: write` and runs no test: an earlier job of the caller produces a Cobertura XML coverage report and uploads it as an artifact ([guide](guides/code-metrics.md)).
#### 🔀 Workflow #### 🔀 Workflow
@@ -512,7 +514,7 @@ No dependencies need to be installed; the workflow uses only the Python standard
1. Clone the repository: 1. Clone the repository:
```bash ```bash
git clone ssh://git@git.tirsystem.com:10022/TirSystem/github-action.git git clone ssh://git@git.tirsystem.com:10022/TirSystem/git-workflows.git
``` ```
2. Add the secrets listed under [Requirements](#-requirements) to the repository settings in Gitea. 2. Add the secrets listed under [Requirements](#-requirements) to the repository settings in Gitea.
3. Configure the GitHub push mirror in the repository settings. 3. Configure the GitHub push mirror in the repository settings.
@@ -559,6 +561,6 @@ Licensed under the GNU Affero General Public License v3.0 (AGPL-3.0). See [LICEN
## 🔗 Links ## 🔗 Links
- [Repository](https://git.tirsystem.com/TirSystem/github-action) - [Repository](https://git.tirsystem.com/TirSystem/git-workflows)
- [Documentation](https://git.tirsystem.com/TirSystem/github-action#readme) - [Documentation](https://git.tirsystem.com/TirSystem/git-workflows#readme)
- [Issue tracker](https://git.tirsystem.com/TirSystem/github-action/issues) - [Issue tracker](https://git.tirsystem.com/TirSystem/git-workflows/issues)
+3 -3
View File
@@ -1,4 +1,4 @@
<!-- translation of CodeMetrics.md, source sha256 f5bd05223699 --> <!-- translation of CodeMetrics.md, source sha256 8cdd72522593 -->
> Dette er en oversættelse af [`CodeMetrics`](CodeMetrics). Den engelske side er autoritativ, og ændringer her bliver overskrevet, næste gang wikien publiceres. > Dette er en oversættelse af [`CodeMetrics`](CodeMetrics). Den engelske side er autoritativ, og ændringer her bliver overskrevet, næste gang wikien publiceres.
@@ -34,7 +34,7 @@ jobs:
needs: tests needs: tests
permissions: permissions:
contents: write contents: write
uses: TirSystem/github-action/.gitea/workflows/code-metrics.yml@v2 uses: TirSystem/git-workflows/.gitea/workflows/code-metrics.yml@v2
with: with:
coverage-artifact: coverage coverage-artifact: coverage
coverage-report: coverage.xml coverage-report: coverage.xml
@@ -49,7 +49,7 @@ jobs:
| `coverage-warn` | `60` | Dækning i procent, under hvilken badget er rødt | | `coverage-warn` | `60` | Dækning i procent, under hvilken badget er rødt |
| `coverage-good` | `80` | Dækning i procent, fra hvilken badget er grønt; derimellem er det gult | | `coverage-good` | `80` | Dækning i procent, fra hvilken badget er grønt; derimellem er det gult |
| `badges-branch` | `badges` | Gren, der indeholder badge-filerne; den oprettes, hvis den ikke findes | | `badges-branch` | `badges` | Gren, der indeholder badge-filerne; den oprettes, hvis den ikke findes |
| `tools-ref` | `v2` | Tag eller gren i `TirSystem/github-action`, hvorfra scripts i `tools/` hentes | | `tools-ref` | `v2` | Tag eller gren i `TirSystem/git-workflows`, hvorfra scripts i `tools/` hentes |
Reference workflowet ved major-tagget (`@v1`) eller ved et præcist tag, aldrig ved `main`. Et kald ved et præcist tag er kun fuldt fastlåst, når `tools-ref` navngiver samme tag. Se opgraderingsvejledningen. Start workflowet kun ved push til din standardgren: badge-committet har `[skip ci]` og laves med kørslens token, som ikke starter en ny kørsel, men en trigger på alle grene ville skrive ét commit pr. gren. Reference workflowet ved major-tagget (`@v1`) eller ved et præcist tag, aldrig ved `main`. Et kald ved et præcist tag er kun fuldt fastlåst, når `tools-ref` navngiver samme tag. Se opgraderingsvejledningen. Start workflowet kun ved push til din standardgren: badge-committet har `[skip ci]` og laves med kørslens token, som ikke starter en ny kørsel, men en trigger på alle grene ville skrive ét commit pr. gren.
+2 -2
View File
@@ -40,7 +40,7 @@ jobs:
needs: tests needs: tests
permissions: permissions:
contents: write contents: write
uses: TirSystem/github-action/.gitea/workflows/code-metrics.yml@v2 uses: TirSystem/git-workflows/.gitea/workflows/code-metrics.yml@v2
with: with:
coverage-artifact: coverage coverage-artifact: coverage
coverage-report: coverage.xml coverage-report: coverage.xml
@@ -55,7 +55,7 @@ jobs:
| `coverage-warn` | `60` | Coverage in percent below which the badge is red | | `coverage-warn` | `60` | Coverage in percent below which the badge is red |
| `coverage-good` | `80` | Coverage in percent from which the badge is green; in between it is yellow | | `coverage-good` | `80` | Coverage in percent from which the badge is green; in between it is yellow |
| `badges-branch` | `badges` | Branch that holds the badge files; it is created when it does not exist | | `badges-branch` | `badges` | Branch that holds the badge files; it is created when it does not exist |
| `tools-ref` | `v2` | Tag or branch of `TirSystem/github-action` from which the scripts in `tools/` are fetched | | `tools-ref` | `v2` | Tag or branch of `TirSystem/git-workflows` from which the scripts in `tools/` are fetched |
Reference the workflow at the major tag (`@v2`) or at an exact tag, never at Reference the workflow at the major tag (`@v2`) or at an exact tag, never at
`main`. A call at an exact tag is pinned completely only when `tools-ref` names `main`. A call at an exact tag is pinned completely only when `tools-ref` names
+3 -3
View File
@@ -1,4 +1,4 @@
<!-- translation of CodeMetrics.md, source sha256 f5bd05223699 --> <!-- translation of CodeMetrics.md, source sha256 8cdd72522593 -->
> Ini ialah terjemahan [`CodeMetrics`](CodeMetrics). Halaman bahasa Inggeris ialah teks yang sah, dan perubahan di sini akan ditimpa pada penerbitan wiki yang seterusnya. > Ini ialah terjemahan [`CodeMetrics`](CodeMetrics). Halaman bahasa Inggeris ialah teks yang sah, dan perubahan di sini akan ditimpa pada penerbitan wiki yang seterusnya.
@@ -34,7 +34,7 @@ jobs:
needs: tests needs: tests
permissions: permissions:
contents: write contents: write
uses: TirSystem/github-action/.gitea/workflows/code-metrics.yml@v2 uses: TirSystem/git-workflows/.gitea/workflows/code-metrics.yml@v2
with: with:
coverage-artifact: coverage coverage-artifact: coverage
coverage-report: coverage.xml coverage-report: coverage.xml
@@ -49,7 +49,7 @@ jobs:
| `coverage-warn` | `60` | Liputan dalam peratus di bawahnya lencana berwarna merah | | `coverage-warn` | `60` | Liputan dalam peratus di bawahnya lencana berwarna merah |
| `coverage-good` | `80` | Liputan dalam peratus yang bermulanya lencana berwarna hijau; di antaranya kuning | | `coverage-good` | `80` | Liputan dalam peratus yang bermulanya lencana berwarna hijau; di antaranya kuning |
| `badges-branch` | `badges` | Cabang yang memegang fail lencana; ia dicipta jika tidak wujud | | `badges-branch` | `badges` | Cabang yang memegang fail lencana; ia dicipta jika tidak wujud |
| `tools-ref` | `v2` | Tag atau cabang `TirSystem/github-action` tempat skrip dalam `tools/` diambil | | `tools-ref` | `v2` | Tag atau cabang `TirSystem/git-workflows` tempat skrip dalam `tools/` diambil |
Rujuk aliran kerja pada tag major (`@v1`) atau pada tag tepat, jangan sekali-kali pada `main`. Panggilan pada tag tepat hanya tersemat sepenuhnya apabila `tools-ref` menamakan tag yang sama. Lihat panduan menaik taraf. Mulakan aliran kerja pada push ke cabang lalai anda sahaja: commit lencana membawa `[skip ci]` dan dibuat dengan token larian, yang tidak memulakan larian lain, tetapi pencetus pada setiap cabang akan menulis satu commit bagi setiap cabang. Rujuk aliran kerja pada tag major (`@v1`) atau pada tag tepat, jangan sekali-kali pada `main`. Panggilan pada tag tepat hanya tersemat sepenuhnya apabila `tools-ref` menamakan tag yang sama. Lihat panduan menaik taraf. Mulakan aliran kerja pada push ke cabang lalai anda sahaja: commit lencana membawa `[skip ci]` dan dibuat dengan token larian, yang tidak memulakan larian lain, tetapi pencetus pada setiap cabang akan menulis satu commit bagi setiap cabang.
+2 -2
View File
@@ -1,4 +1,4 @@
<!-- translation of EnglishComments.md, source sha256 41005bb2c7f4 --> <!-- translation of EnglishComments.md, source sha256 a9533f14d5f5 -->
> Dette er en oversættelse af [`EnglishComments`](EnglishComments). Den engelske side er autoritativ, og ændringer her bliver overskrevet, næste gang wikien publiceres. > Dette er en oversættelse af [`EnglishComments`](EnglishComments). Den engelske side er autoritativ, og ændringer her bliver overskrevet, næste gang wikien publiceres.
@@ -22,7 +22,7 @@ on:
jobs: jobs:
english-comments: english-comments:
uses: TirSystem/github-action/.gitea/workflows/english-comments.yml@v2 uses: TirSystem/git-workflows/.gitea/workflows/english-comments.yml@v2
with: with:
exclude: "docs/generated/**" exclude: "docs/generated/**"
allowed-words-file: .english-comments-allowed-words allowed-words-file: .english-comments-allowed-words
+1 -1
View File
@@ -22,7 +22,7 @@ on:
jobs: jobs:
english-comments: english-comments:
uses: TirSystem/github-action/.gitea/workflows/english-comments.yml@v2 uses: TirSystem/git-workflows/.gitea/workflows/english-comments.yml@v2
with: with:
exclude: "docs/generated/**" exclude: "docs/generated/**"
allowed-words-file: .english-comments-allowed-words allowed-words-file: .english-comments-allowed-words
+2 -2
View File
@@ -1,4 +1,4 @@
<!-- translation of EnglishComments.md, source sha256 41005bb2c7f4 --> <!-- translation of EnglishComments.md, source sha256 a9533f14d5f5 -->
> Ini ialah terjemahan [`EnglishComments`](EnglishComments). Halaman bahasa Inggeris ialah teks yang sah, dan perubahan di sini akan ditimpa pada penerbitan wiki yang seterusnya. > Ini ialah terjemahan [`EnglishComments`](EnglishComments). Halaman bahasa Inggeris ialah teks yang sah, dan perubahan di sini akan ditimpa pada penerbitan wiki yang seterusnya.
@@ -23,7 +23,7 @@ on:
jobs: jobs:
english-comments: english-comments:
uses: TirSystem/github-action/.gitea/workflows/english-comments.yml@v2 uses: TirSystem/git-workflows/.gitea/workflows/english-comments.yml@v2
with: with:
exclude: "docs/generated/**" exclude: "docs/generated/**"
allowed-words-file: .english-comments-allowed-words allowed-words-file: .english-comments-allowed-words
+6 -6
View File
@@ -1,4 +1,4 @@
<!-- translation of Home.md, source sha256 b6fa55df68b6 --> <!-- translation of Home.md, source sha256 3bb705987743 -->
> Dette er en oversættelse af [`Home`](Home). Den engelske side er autoritativ, og ændringer her bliver overskrevet, næste gang wikien publiceres. > Dette er en oversættelse af [`Home`](Home). Den engelske side er autoritativ, og ændringer her bliver overskrevet, næste gang wikien publiceres.
@@ -101,7 +101,7 @@ deactivate Workflow
### Kvalitetskontrol ### Kvalitetskontrol
Et genbrugeligt workflow til Python og shell, kaldt med `uses: TirSystem/github-action/.gitea/workflows/quality-checks.yml@v1` (se [vejledningen](QualityChecksPythonShell)). Et genbrugeligt workflow til Python og shell, kaldt med `uses: TirSystem/git-workflows/.gitea/workflows/quality-checks.yml@v1` (se [vejledningen](QualityChecksPythonShell)).
#### Workflow #### Workflow
@@ -147,7 +147,7 @@ deactivate Workflow
### Kvalitetskontrol C++ ### Kvalitetskontrol C++
Et genbrugeligt workflow til C og C++, kaldt med `uses: TirSystem/github-action/.gitea/workflows/quality-checks-cpp.yml@v1` (ADR-0008). Repositoryet skal have en `.clang-format`; en `.clang-tidy` og en compile-database er valgfrie. Et genbrugeligt workflow til C og C++, kaldt med `uses: TirSystem/git-workflows/.gitea/workflows/quality-checks-cpp.yml@v1` (ADR-0008). Repositoryet skal have en `.clang-format`; en `.clang-tidy` og en compile-database er valgfrie.
#### Workflow #### Workflow
@@ -192,7 +192,7 @@ deactivate Workflow
### Kvalitetskontrol C# ### Kvalitetskontrol C#
Et genbrugeligt workflow til C#, kaldt med `uses: TirSystem/github-action/.gitea/workflows/quality-checks-csharp.yml@v1` (ADR-0008). Det installerer det præcise .NET SDK, som `dotnet-sdk-version` angiver (10 eller nyere), og skal bruge netværket til pakkegendannelsen. Et genbrugeligt workflow til C#, kaldt med `uses: TirSystem/git-workflows/.gitea/workflows/quality-checks-csharp.yml@v1` (ADR-0008). Det installerer det præcise .NET SDK, som `dotnet-sdk-version` angiver (10 eller nyere), og skal bruge netværket til pakkegendannelsen.
#### Workflow #### Workflow
@@ -237,7 +237,7 @@ deactivate Workflow
### Kodemålinger og dækningsbadges ### Kodemålinger og dækningsbadges
Et genbrugeligt workflow, der tæller kodefilerne og kodelinjerne (uden kommentar- og tomme linjer) i et repository og udgiver dem sammen med testdækningen som tre SVG-badges på en `badges`-gren, kaldt med `uses: TirSystem/github-action/.gitea/workflows/code-metrics.yml@v2` (ADR-0010). Det kræver `contents: write` og kører ingen test: et tidligere job hos kalderen frembringer en dækningsrapport i Cobertura XML-format og uploader den som artefakt ([vejledning](CodeMetrics.da)). Et genbrugeligt workflow, der tæller kodefilerne og kodelinjerne (uden kommentar- og tomme linjer) i et repository og udgiver dem sammen med testdækningen som tre SVG-badges på en `badges`-gren, kaldt med `uses: TirSystem/git-workflows/.gitea/workflows/code-metrics.yml@v2` (ADR-0010). Det kræver `contents: write` og kører ingen test: et tidligere job hos kalderen frembringer en dækningsrapport i Cobertura XML-format og uploader den som artefakt ([vejledning](CodeMetrics.da)).
#### Workflow #### Workflow
@@ -507,7 +507,7 @@ Der skal ikke installeres afhængigheder; workflowet bruger kun Pythons standard
1. Klon repositoryet: 1. Klon repositoryet:
```bash ```bash
git clone ssh://git@git.tirsystem.com:10022/TirSystem/github-action.git git clone ssh://git@git.tirsystem.com:10022/TirSystem/git-workflows.git
``` ```
2. Tilføj de secrets, der er nævnt under [Krav](#krav), til repositoryets indstillinger i Gitea. 2. Tilføj de secrets, der er nævnt under [Krav](#krav), til repositoryets indstillinger i Gitea.
3. Konfigurer GitHub push-spejlet i repositoryets indstillinger. 3. Konfigurer GitHub push-spejlet i repositoryets indstillinger.
+7 -5
View File
@@ -18,6 +18,8 @@ It contains ten workflows: metadata sync to the GitHub mirror, wiki publishing (
## Workflows ## Workflows
When a repository should use each workflow in its SQA and QC is set out in the [adoption rules](https://git.tirsystem.com/TirSystem/git-workflows/src/branch/main/guides/adoption-rules.md).
Ten workflows live in this repository. A **scoped** workflow is delivered by the instance to every repository of the TirSystem organizations and needs nothing in the repository; a **reusable** workflow is called by a repository with `uses:`; the others run only here. The diagrams are PlantUML source. Ten workflows live in this repository. A **scoped** workflow is delivered by the instance to every repository of the TirSystem organizations and needs nothing in the repository; a **reusable** workflow is called by a repository with `uses:`; the others run only here. The diagrams are PlantUML source.
| Workflow | File | Kind | Starts on | Purpose | | Workflow | File | Kind | Starts on | Purpose |
@@ -101,7 +103,7 @@ deactivate Workflow
### Quality checks ### Quality checks
A reusable workflow for Python and shell, called with `uses: TirSystem/github-action/.gitea/workflows/quality-checks.yml@v1` (see the [guide](QualityChecksPythonShell)). A reusable workflow for Python and shell, called with `uses: TirSystem/git-workflows/.gitea/workflows/quality-checks.yml@v1` (see the [guide](QualityChecksPythonShell)).
#### Workflow #### Workflow
@@ -147,7 +149,7 @@ deactivate Workflow
### Quality checks C++ ### Quality checks C++
A reusable workflow for C and C++, called with `uses: TirSystem/github-action/.gitea/workflows/quality-checks-cpp.yml@v1` (ADR-0008). The repository needs a `.clang-format`; a `.clang-tidy` and a compile database are optional. A reusable workflow for C and C++, called with `uses: TirSystem/git-workflows/.gitea/workflows/quality-checks-cpp.yml@v1` (ADR-0008). The repository needs a `.clang-format`; a `.clang-tidy` and a compile database are optional.
#### Workflow #### Workflow
@@ -192,7 +194,7 @@ deactivate Workflow
### Quality checks C# ### Quality checks C#
A reusable workflow for C#, called with `uses: TirSystem/github-action/.gitea/workflows/quality-checks-csharp.yml@v1` (ADR-0008). It installs the exact .NET SDK given by `dotnet-sdk-version` (10 or later) and needs the network for the package restore. A reusable workflow for C#, called with `uses: TirSystem/git-workflows/.gitea/workflows/quality-checks-csharp.yml@v1` (ADR-0008). It installs the exact .NET SDK given by `dotnet-sdk-version` (10 or later) and needs the network for the package restore.
#### Workflow #### Workflow
@@ -237,7 +239,7 @@ deactivate Workflow
### Code metrics ### Code metrics
A reusable workflow that counts the code files and the lines of code (without comment and blank lines) of a repository and publishes them, with the test coverage, as three SVG badges on a `badges` branch, called with `uses: TirSystem/github-action/.gitea/workflows/code-metrics.yml@v2` (ADR-0010). It needs `contents: write` and runs no test: an earlier job of the caller produces a Cobertura XML coverage report and uploads it as an artifact ([guide](CodeMetrics)). A reusable workflow that counts the code files and the lines of code (without comment and blank lines) of a repository and publishes them, with the test coverage, as three SVG badges on a `badges` branch, called with `uses: TirSystem/git-workflows/.gitea/workflows/code-metrics.yml@v2` (ADR-0010). It needs `contents: write` and runs no test: an earlier job of the caller produces a Cobertura XML coverage report and uploads it as an artifact ([guide](CodeMetrics)).
#### Workflow #### Workflow
@@ -511,7 +513,7 @@ No dependencies need to be installed; the workflow uses only the Python standard
1. Clone the repository: 1. Clone the repository:
```bash ```bash
git clone ssh://git@git.tirsystem.com:10022/TirSystem/github-action.git git clone ssh://git@git.tirsystem.com:10022/TirSystem/git-workflows.git
``` ```
2. Add the secrets listed under [Requirements](#requirements) to the repository settings in Gitea. 2. Add the secrets listed under [Requirements](#requirements) to the repository settings in Gitea.
3. Configure the GitHub push mirror in the repository settings. 3. Configure the GitHub push mirror in the repository settings.
+6 -6
View File
@@ -1,4 +1,4 @@
<!-- translation of Home.md, source sha256 b6fa55df68b6 --> <!-- translation of Home.md, source sha256 3bb705987743 -->
> Ini ialah terjemahan [`Home`](Home). Halaman bahasa Inggeris ialah teks yang sah, dan perubahan di sini akan ditimpa pada penerbitan wiki yang seterusnya. > Ini ialah terjemahan [`Home`](Home). Halaman bahasa Inggeris ialah teks yang sah, dan perubahan di sini akan ditimpa pada penerbitan wiki yang seterusnya.
@@ -101,7 +101,7 @@ deactivate Workflow
### Semakan kualiti ### Semakan kualiti
Aliran kerja boleh guna semula untuk Python dan shell, dipanggil dengan `uses: TirSystem/github-action/.gitea/workflows/quality-checks.yml@v1` (lihat [panduan](QualityChecksPythonShell)). Aliran kerja boleh guna semula untuk Python dan shell, dipanggil dengan `uses: TirSystem/git-workflows/.gitea/workflows/quality-checks.yml@v1` (lihat [panduan](QualityChecksPythonShell)).
#### Aliran kerja #### Aliran kerja
@@ -147,7 +147,7 @@ deactivate Workflow
### Semakan kualiti C++ ### Semakan kualiti C++
Aliran kerja boleh guna semula untuk C dan C++, dipanggil dengan `uses: TirSystem/github-action/.gitea/workflows/quality-checks-cpp.yml@v1` (ADR-0008). Repositori mesti mempunyai `.clang-format`; `.clang-tidy` dan pangkalan data kompilasi adalah pilihan. Aliran kerja boleh guna semula untuk C dan C++, dipanggil dengan `uses: TirSystem/git-workflows/.gitea/workflows/quality-checks-cpp.yml@v1` (ADR-0008). Repositori mesti mempunyai `.clang-format`; `.clang-tidy` dan pangkalan data kompilasi adalah pilihan.
#### Aliran kerja #### Aliran kerja
@@ -192,7 +192,7 @@ deactivate Workflow
### Semakan kualiti C# ### Semakan kualiti C#
Aliran kerja boleh guna semula untuk C#, dipanggil dengan `uses: TirSystem/github-action/.gitea/workflows/quality-checks-csharp.yml@v1` (ADR-0008). Ia memasang .NET SDK tepat yang diberikan oleh `dotnet-sdk-version` (10 atau lebih baharu) dan memerlukan rangkaian untuk pemulihan pakej. Aliran kerja boleh guna semula untuk C#, dipanggil dengan `uses: TirSystem/git-workflows/.gitea/workflows/quality-checks-csharp.yml@v1` (ADR-0008). Ia memasang .NET SDK tepat yang diberikan oleh `dotnet-sdk-version` (10 atau lebih baharu) dan memerlukan rangkaian untuk pemulihan pakej.
#### Aliran kerja #### Aliran kerja
@@ -237,7 +237,7 @@ deactivate Workflow
### Metrik kod dan lencana liputan ### Metrik kod dan lencana liputan
Aliran kerja boleh guna semula yang mengira fail kod dan baris kod (tanpa baris komen dan baris kosong) sesebuah repositori dan menerbitkannya, bersama liputan ujian, sebagai tiga lencana SVG pada cabang `badges`, dipanggil dengan `uses: TirSystem/github-action/.gitea/workflows/code-metrics.yml@v2` (ADR-0010). Ia memerlukan `contents: write` dan tidak menjalankan sebarang ujian: kerja yang lebih awal oleh pemanggil menghasilkan laporan liputan format Cobertura XML dan memuat naiknya sebagai artifak ([panduan](CodeMetrics.ms)). Aliran kerja boleh guna semula yang mengira fail kod dan baris kod (tanpa baris komen dan baris kosong) sesebuah repositori dan menerbitkannya, bersama liputan ujian, sebagai tiga lencana SVG pada cabang `badges`, dipanggil dengan `uses: TirSystem/git-workflows/.gitea/workflows/code-metrics.yml@v2` (ADR-0010). Ia memerlukan `contents: write` dan tidak menjalankan sebarang ujian: kerja yang lebih awal oleh pemanggil menghasilkan laporan liputan format Cobertura XML dan memuat naiknya sebagai artifak ([panduan](CodeMetrics.ms)).
#### Aliran kerja #### Aliran kerja
@@ -507,7 +507,7 @@ Tiada kebergantungan perlu dipasang; aliran kerja hanya menggunakan pustaka stan
1. Klon repositori: 1. Klon repositori:
```bash ```bash
git clone ssh://git@git.tirsystem.com:10022/TirSystem/github-action.git git clone ssh://git@git.tirsystem.com:10022/TirSystem/git-workflows.git
``` ```
2. Tambah rahsia yang disenaraikan di bawah [Keperluan](#keperluan) ke tetapan repositori dalam Gitea. 2. Tambah rahsia yang disenaraikan di bawah [Keperluan](#keperluan) ke tetapan repositori dalam Gitea.
3. Konfigurasikan push mirror GitHub dalam tetapan repositori. 3. Konfigurasikan push mirror GitHub dalam tetapan repositori.
+3 -3
View File
@@ -1,4 +1,4 @@
<!-- translation of QualityChecksCSharp.md, source sha256 8b222eda2f0c --> <!-- translation of QualityChecksCSharp.md, source sha256 07753383432e -->
> Dette er en oversættelse af [`QualityChecksCSharp`](QualityChecksCSharp). Den engelske side er autoritativ, og ændringer her bliver overskrevet, næste gang wikien publiceres. > Dette er en oversættelse af [`QualityChecksCSharp`](QualityChecksCSharp). Den engelske side er autoritativ, og ændringer her bliver overskrevet, næste gang wikien publiceres.
@@ -22,7 +22,7 @@ jobs:
quality: quality:
permissions: permissions:
contents: read contents: read
uses: TirSystem/github-action/.gitea/workflows/quality-checks-csharp.yml@v1 uses: TirSystem/git-workflows/.gitea/workflows/quality-checks-csharp.yml@v1
with: with:
project: src/App.sln project: src/App.sln
``` ```
@@ -32,7 +32,7 @@ jobs:
| `working-directory` | `.` | Mappe, relativt til repositoryets rod, hvis filer kontrolleres | | `working-directory` | `.` | Mappe, relativt til repositoryets rod, hvis filer kontrolleres |
| `project` | tom | Solution- eller projektfil, relativt til `working-directory`; tom bruger den eneste sporede `*.sln` eller `*.slnx`, ellers den eneste `*.csproj`, der er sporet dér | | `project` | tom | Solution- eller projektfil, relativt til `working-directory`; tom bruger den eneste sporede `*.sln` eller `*.slnx`, ellers den eneste `*.csproj`, der er sporet dér |
| `dotnet-sdk-version` | `10.0.401` | Præcis version af .NET SDK, 10 eller nyere; en kanal som `10.0`, et interval og en version under 10 afvises | | `dotnet-sdk-version` | `10.0.401` | Præcis version af .NET SDK, 10 eller nyere; en kanal som `10.0`, et interval og en version under 10 afvises |
| `tools-ref` | `v2` | Tag eller gren i `TirSystem/github-action`, hvorfra scriptet `tools/quality-checks-csharp.sh` hentes | | `tools-ref` | `v2` | Tag eller gren i `TirSystem/git-workflows`, hvorfra scriptet `tools/quality-checks-csharp.sh` hentes |
Henvis til workflowet ved major-tagget (`@v1`) eller et præcist tag, aldrig ved `main`. Et kald ved et præcist tag er kun fuldt fastlåst, når `tools-ref` angiver samme tag. Se opgraderingsvejledningen. SDK-versionen er præcis: at hæve standardværdien er en ny udgivelse af dette repository, ikke en stille ændring. Henvis til workflowet ved major-tagget (`@v1`) eller et præcist tag, aldrig ved `main`. Et kald ved et præcist tag er kun fuldt fastlåst, når `tools-ref` angiver samme tag. Se opgraderingsvejledningen. SDK-versionen er præcis: at hæve standardværdien er en ny udgivelse af dette repository, ikke en stille ændring.
+2 -2
View File
@@ -26,7 +26,7 @@ jobs:
quality: quality:
permissions: permissions:
contents: read contents: read
uses: TirSystem/github-action/.gitea/workflows/quality-checks-csharp.yml@v1 uses: TirSystem/git-workflows/.gitea/workflows/quality-checks-csharp.yml@v1
with: with:
project: src/App.sln project: src/App.sln
``` ```
@@ -36,7 +36,7 @@ jobs:
| `working-directory` | `.` | Directory, relative to the repository root, whose files are checked | | `working-directory` | `.` | Directory, relative to the repository root, whose files are checked |
| `project` | empty | Solution or project file, relative to `working-directory`; empty uses the single `*.sln` or `*.slnx`, else the single `*.csproj`, that is tracked there | | `project` | empty | Solution or project file, relative to `working-directory`; empty uses the single `*.sln` or `*.slnx`, else the single `*.csproj`, that is tracked there |
| `dotnet-sdk-version` | `10.0.401` | Exact version of the .NET SDK, 10 or later; a channel such as `10.0`, a range and a version below 10 are refused | | `dotnet-sdk-version` | `10.0.401` | Exact version of the .NET SDK, 10 or later; a channel such as `10.0`, a range and a version below 10 are refused |
| `tools-ref` | `v2` | Tag or branch of `TirSystem/github-action` from which the script `tools/quality-checks-csharp.sh` is fetched | | `tools-ref` | `v2` | Tag or branch of `TirSystem/git-workflows` from which the script `tools/quality-checks-csharp.sh` is fetched |
Reference the workflow at the major tag (`@v1`) or at an exact tag, never at Reference the workflow at the major tag (`@v1`) or at an exact tag, never at
`main`. A call at an exact tag is pinned completely only when `tools-ref` names `main`. A call at an exact tag is pinned completely only when `tools-ref` names
+3 -3
View File
@@ -1,4 +1,4 @@
<!-- translation of QualityChecksCSharp.md, source sha256 8b222eda2f0c --> <!-- translation of QualityChecksCSharp.md, source sha256 07753383432e -->
> Ini ialah terjemahan [`QualityChecksCSharp`](QualityChecksCSharp). Halaman bahasa Inggeris ialah teks yang sah, dan perubahan di sini akan ditimpa pada penerbitan wiki yang seterusnya. > Ini ialah terjemahan [`QualityChecksCSharp`](QualityChecksCSharp). Halaman bahasa Inggeris ialah teks yang sah, dan perubahan di sini akan ditimpa pada penerbitan wiki yang seterusnya.
@@ -22,7 +22,7 @@ jobs:
quality: quality:
permissions: permissions:
contents: read contents: read
uses: TirSystem/github-action/.gitea/workflows/quality-checks-csharp.yml@v1 uses: TirSystem/git-workflows/.gitea/workflows/quality-checks-csharp.yml@v1
with: with:
project: src/App.sln project: src/App.sln
``` ```
@@ -32,7 +32,7 @@ jobs:
| `working-directory` | `.` | Direktori, relatif kepada akar repositori, yang failnya disemak | | `working-directory` | `.` | Direktori, relatif kepada akar repositori, yang failnya disemak |
| `project` | kosong | Fail solution atau projek, relatif kepada `working-directory`; kosong menggunakan satu-satunya `*.sln` atau `*.slnx` yang dijejaki, jika tiada maka satu-satunya `*.csproj` yang dijejaki di situ | | `project` | kosong | Fail solution atau projek, relatif kepada `working-directory`; kosong menggunakan satu-satunya `*.sln` atau `*.slnx` yang dijejaki, jika tiada maka satu-satunya `*.csproj` yang dijejaki di situ |
| `dotnet-sdk-version` | `10.0.401` | Versi tepat .NET SDK, 10 atau lebih baharu; saluran seperti `10.0`, julat dan versi di bawah 10 ditolak | | `dotnet-sdk-version` | `10.0.401` | Versi tepat .NET SDK, 10 atau lebih baharu; saluran seperti `10.0`, julat dan versi di bawah 10 ditolak |
| `tools-ref` | `v2` | Tag atau cabang `TirSystem/github-action` tempat skrip `tools/quality-checks-csharp.sh` diambil | | `tools-ref` | `v2` | Tag atau cabang `TirSystem/git-workflows` tempat skrip `tools/quality-checks-csharp.sh` diambil |
Rujuk aliran kerja pada tag major (`@v1`) atau pada tag tepat, jangan sekali-kali pada `main`. Panggilan pada tag tepat hanya disematkan sepenuhnya apabila `tools-ref` menamakan tag yang sama. Lihat panduan naik taraf. Versi SDK adalah tepat: menaikkan nilai lalai ialah keluaran baharu repositori ini, bukan perubahan senyap. Rujuk aliran kerja pada tag major (`@v1`) atau pada tag tepat, jangan sekali-kali pada `main`. Panggilan pada tag tepat hanya disematkan sepenuhnya apabila `tools-ref` menamakan tag yang sama. Lihat panduan naik taraf. Versi SDK adalah tepat: menaikkan nilai lalai ialah keluaran baharu repositori ini, bukan perubahan senyap.
+3 -3
View File
@@ -1,4 +1,4 @@
<!-- translation of QualityChecksCpp.md, source sha256 47b2acf3df76 --> <!-- translation of QualityChecksCpp.md, source sha256 7de98132031b -->
> Dette er en oversættelse af [`QualityChecksCpp`](QualityChecksCpp). Den engelske side er autoritativ, og ændringer her bliver overskrevet, næste gang wikien publiceres. > Dette er en oversættelse af [`QualityChecksCpp`](QualityChecksCpp). Den engelske side er autoritativ, og ændringer her bliver overskrevet, næste gang wikien publiceres.
@@ -22,7 +22,7 @@ jobs:
quality: quality:
permissions: permissions:
contents: read contents: read
uses: TirSystem/github-action/.gitea/workflows/quality-checks-cpp.yml@v1 uses: TirSystem/git-workflows/.gitea/workflows/quality-checks-cpp.yml@v1
with: with:
std: c++20 std: c++20
``` ```
@@ -34,7 +34,7 @@ jobs:
| `compile-commands-dir` | tom | Mappe, relativt til repositoryets rod, med en `compile_commands.json`, som din pipeline har bygget før kaldet; når den er sat, bruger clang-tidy den og ignorerer `std` | | `compile-commands-dir` | tom | Mappe, relativt til repositoryets rod, med en `compile_commands.json`, som din pipeline har bygget før kaldet; når den er sat, bruger clang-tidy den og ignorerer `std` |
| `clang-format-version` | `23.1.3` | Præcis version af pakken clang-format | | `clang-format-version` | `23.1.3` | Præcis version af pakken clang-format |
| `clang-tidy-version` | `22.1.8` | Præcis version af pakken clang-tidy | | `clang-tidy-version` | `22.1.8` | Præcis version af pakken clang-tidy |
| `tools-ref` | `v2` | Tag eller gren i `TirSystem/github-action`, hvorfra scriptet `tools/quality-checks-cpp.sh` hentes | | `tools-ref` | `v2` | Tag eller gren i `TirSystem/git-workflows`, hvorfra scriptet `tools/quality-checks-cpp.sh` hentes |
Henvis til workflowet ved major-tagget (`@v1`) eller et præcist tag, aldrig ved `main`. Et kald ved et præcist tag er kun fuldt fastlåst, når `tools-ref` angiver samme tag. Se opgraderingsvejledningen. Værktøjsversionerne er præcise: en nyere version af et værktøj er en ny udgivelse af dette repository, ikke en stille ændring. Henvis til workflowet ved major-tagget (`@v1`) eller et præcist tag, aldrig ved `main`. Et kald ved et præcist tag er kun fuldt fastlåst, når `tools-ref` angiver samme tag. Se opgraderingsvejledningen. Værktøjsversionerne er præcise: en nyere version af et værktøj er en ny udgivelse af dette repository, ikke en stille ændring.
+2 -2
View File
@@ -25,7 +25,7 @@ jobs:
quality: quality:
permissions: permissions:
contents: read contents: read
uses: TirSystem/github-action/.gitea/workflows/quality-checks-cpp.yml@v1 uses: TirSystem/git-workflows/.gitea/workflows/quality-checks-cpp.yml@v1
with: with:
std: c++20 std: c++20
``` ```
@@ -37,7 +37,7 @@ jobs:
| `compile-commands-dir` | empty | Directory, relative to the repository root, with a `compile_commands.json` that your pipeline built before the call; when set, clang-tidy uses it and ignores `std` | | `compile-commands-dir` | empty | Directory, relative to the repository root, with a `compile_commands.json` that your pipeline built before the call; when set, clang-tidy uses it and ignores `std` |
| `clang-format-version` | `23.1.3` | Exact version of the clang-format package | | `clang-format-version` | `23.1.3` | Exact version of the clang-format package |
| `clang-tidy-version` | `22.1.8` | Exact version of the clang-tidy package | | `clang-tidy-version` | `22.1.8` | Exact version of the clang-tidy package |
| `tools-ref` | `v2` | Tag or branch of `TirSystem/github-action` from which the script `tools/quality-checks-cpp.sh` is fetched | | `tools-ref` | `v2` | Tag or branch of `TirSystem/git-workflows` from which the script `tools/quality-checks-cpp.sh` is fetched |
Reference the workflow at the major tag (`@v1`) or at an exact tag, never at Reference the workflow at the major tag (`@v1`) or at an exact tag, never at
`main`. A call at an exact tag is pinned completely only when `tools-ref` names `main`. A call at an exact tag is pinned completely only when `tools-ref` names
+3 -3
View File
@@ -1,4 +1,4 @@
<!-- translation of QualityChecksCpp.md, source sha256 47b2acf3df76 --> <!-- translation of QualityChecksCpp.md, source sha256 7de98132031b -->
> Ini ialah terjemahan [`QualityChecksCpp`](QualityChecksCpp). Halaman bahasa Inggeris ialah teks yang sah, dan perubahan di sini akan ditimpa pada penerbitan wiki yang seterusnya. > Ini ialah terjemahan [`QualityChecksCpp`](QualityChecksCpp). Halaman bahasa Inggeris ialah teks yang sah, dan perubahan di sini akan ditimpa pada penerbitan wiki yang seterusnya.
@@ -22,7 +22,7 @@ jobs:
quality: quality:
permissions: permissions:
contents: read contents: read
uses: TirSystem/github-action/.gitea/workflows/quality-checks-cpp.yml@v1 uses: TirSystem/git-workflows/.gitea/workflows/quality-checks-cpp.yml@v1
with: with:
std: c++20 std: c++20
``` ```
@@ -34,7 +34,7 @@ jobs:
| `compile-commands-dir` | kosong | Direktori, relatif kepada akar repositori, dengan `compile_commands.json` yang dibina oleh saluran paip anda sebelum panggilan; apabila ditetapkan, clang-tidy menggunakannya dan mengabaikan `std` | | `compile-commands-dir` | kosong | Direktori, relatif kepada akar repositori, dengan `compile_commands.json` yang dibina oleh saluran paip anda sebelum panggilan; apabila ditetapkan, clang-tidy menggunakannya dan mengabaikan `std` |
| `clang-format-version` | `23.1.3` | Versi tepat pakej clang-format | | `clang-format-version` | `23.1.3` | Versi tepat pakej clang-format |
| `clang-tidy-version` | `22.1.8` | Versi tepat pakej clang-tidy | | `clang-tidy-version` | `22.1.8` | Versi tepat pakej clang-tidy |
| `tools-ref` | `v2` | Tag atau cabang `TirSystem/github-action` tempat skrip `tools/quality-checks-cpp.sh` diambil | | `tools-ref` | `v2` | Tag atau cabang `TirSystem/git-workflows` tempat skrip `tools/quality-checks-cpp.sh` diambil |
Rujuk aliran kerja pada tag major (`@v1`) atau pada tag tepat, jangan sekali-kali pada `main`. Panggilan pada tag tepat hanya disematkan sepenuhnya apabila `tools-ref` menamakan tag yang sama. Lihat panduan naik taraf. Versi alat adalah tepat: versi alat yang lebih baharu ialah keluaran baharu repositori ini, bukan perubahan senyap. Rujuk aliran kerja pada tag major (`@v1`) atau pada tag tepat, jangan sekali-kali pada `main`. Panggilan pada tag tepat hanya disematkan sepenuhnya apabila `tools-ref` menamakan tag yang sama. Lihat panduan naik taraf. Versi alat adalah tepat: versi alat yang lebih baharu ialah keluaran baharu repositori ini, bukan perubahan senyap.
+3 -3
View File
@@ -1,4 +1,4 @@
<!-- translation of QualityChecksPythonShell.md, source sha256 30749ff155ea --> <!-- translation of QualityChecksPythonShell.md, source sha256 c9adab61657e -->
> Dette er en oversættelse af [`QualityChecksPythonShell`](QualityChecksPythonShell). Den engelske side er autoritativ, og ændringer her bliver overskrevet, næste gang wikien publiceres. > Dette er en oversættelse af [`QualityChecksPythonShell`](QualityChecksPythonShell). Den engelske side er autoritativ, og ændringer her bliver overskrevet, næste gang wikien publiceres.
@@ -22,7 +22,7 @@ jobs:
quality: quality:
permissions: permissions:
contents: read contents: read
uses: TirSystem/github-action/.gitea/workflows/quality-checks.yml@v1 uses: TirSystem/git-workflows/.gitea/workflows/quality-checks.yml@v1
with: with:
languages: python,shell languages: python,shell
``` ```
@@ -35,7 +35,7 @@ jobs:
| `mypy-version` | `1.11.2` | Version af mypy | | `mypy-version` | `1.11.2` | Version af mypy |
| `shellcheck-py-version` | `0.10.0.1` | Version af pakken shellcheck-py (ShellCheck 0.10.0) | | `shellcheck-py-version` | `0.10.0.1` | Version af pakken shellcheck-py (ShellCheck 0.10.0) |
| `shfmt-py-version` | `3.11.0.2` | Version af pakken shfmt-py (shfmt 3.11.0) | | `shfmt-py-version` | `3.11.0.2` | Version af pakken shfmt-py (shfmt 3.11.0) |
| `tools-ref` | `v2` | Tag eller gren i `TirSystem/github-action`, hvorfra scriptet `tools/quality-checks.sh` hentes | | `tools-ref` | `v2` | Tag eller gren i `TirSystem/git-workflows`, hvorfra scriptet `tools/quality-checks.sh` hentes |
Henvis til workflowet ved major-tagget (`@v1`) eller et præcist tag (`@v1.0.0`), aldrig ved `main` og aldrig ved en pull requests gren: den gren slettes, når pull requesten flettes, og henvisningen holder op med at virke. Se opgraderingsvejledningen for, hvad hvert valg modtager. Henvis til workflowet ved major-tagget (`@v1`) eller et præcist tag (`@v1.0.0`), aldrig ved `main` og aldrig ved en pull requests gren: den gren slettes, når pull requesten flettes, og henvisningen holder op med at virke. Se opgraderingsvejledningen for, hvad hvert valg modtager.
+2 -2
View File
@@ -25,7 +25,7 @@ jobs:
quality: quality:
permissions: permissions:
contents: read contents: read
uses: TirSystem/github-action/.gitea/workflows/quality-checks.yml@v1 uses: TirSystem/git-workflows/.gitea/workflows/quality-checks.yml@v1
with: with:
languages: python,shell languages: python,shell
``` ```
@@ -38,7 +38,7 @@ jobs:
| `mypy-version` | `1.11.2` | Version of mypy | | `mypy-version` | `1.11.2` | Version of mypy |
| `shellcheck-py-version` | `0.10.0.1` | Version of the shellcheck-py package (ShellCheck 0.10.0) | | `shellcheck-py-version` | `0.10.0.1` | Version of the shellcheck-py package (ShellCheck 0.10.0) |
| `shfmt-py-version` | `3.11.0.2` | Version of the shfmt-py package (shfmt 3.11.0) | | `shfmt-py-version` | `3.11.0.2` | Version of the shfmt-py package (shfmt 3.11.0) |
| `tools-ref` | `v2` | Tag or branch of `TirSystem/github-action` from which the script `tools/quality-checks.sh` is fetched | | `tools-ref` | `v2` | Tag or branch of `TirSystem/git-workflows` from which the script `tools/quality-checks.sh` is fetched |
Reference the workflow at the major tag (`@v1`) or at an exact tag Reference the workflow at the major tag (`@v1`) or at an exact tag
(`@v1.0.0`), never at `main` and never at the branch of a pull request: that (`@v1.0.0`), never at `main` and never at the branch of a pull request: that
+3 -3
View File
@@ -1,4 +1,4 @@
<!-- translation of QualityChecksPythonShell.md, source sha256 30749ff155ea --> <!-- translation of QualityChecksPythonShell.md, source sha256 c9adab61657e -->
> Ini ialah terjemahan [`QualityChecksPythonShell`](QualityChecksPythonShell). Halaman bahasa Inggeris ialah teks yang sah, dan perubahan di sini akan ditimpa pada penerbitan wiki yang seterusnya. > Ini ialah terjemahan [`QualityChecksPythonShell`](QualityChecksPythonShell). Halaman bahasa Inggeris ialah teks yang sah, dan perubahan di sini akan ditimpa pada penerbitan wiki yang seterusnya.
@@ -22,7 +22,7 @@ jobs:
quality: quality:
permissions: permissions:
contents: read contents: read
uses: TirSystem/github-action/.gitea/workflows/quality-checks.yml@v1 uses: TirSystem/git-workflows/.gitea/workflows/quality-checks.yml@v1
with: with:
languages: python,shell languages: python,shell
``` ```
@@ -35,7 +35,7 @@ jobs:
| `mypy-version` | `1.11.2` | Versi mypy | | `mypy-version` | `1.11.2` | Versi mypy |
| `shellcheck-py-version` | `0.10.0.1` | Versi pakej shellcheck-py (ShellCheck 0.10.0) | | `shellcheck-py-version` | `0.10.0.1` | Versi pakej shellcheck-py (ShellCheck 0.10.0) |
| `shfmt-py-version` | `3.11.0.2` | Versi pakej shfmt-py (shfmt 3.11.0) | | `shfmt-py-version` | `3.11.0.2` | Versi pakej shfmt-py (shfmt 3.11.0) |
| `tools-ref` | `v2` | Tag atau cabang `TirSystem/github-action` tempat skrip `tools/quality-checks.sh` diambil | | `tools-ref` | `v2` | Tag atau cabang `TirSystem/git-workflows` tempat skrip `tools/quality-checks.sh` diambil |
Rujuk aliran kerja pada tag major (`@v1`) atau pada tag tepat (`@v1.0.0`), jangan sekali-kali pada `main` dan jangan pada cabang pull request: cabang itu dipadam apabila pull request digabungkan dan rujukan itu berhenti berfungsi. Lihat panduan naik taraf untuk apa yang diterima oleh setiap pilihan. Rujuk aliran kerja pada tag major (`@v1`) atau pada tag tepat (`@v1.0.0`), jangan sekali-kali pada `main` dan jangan pada cabang pull request: cabang itu dipadam apabila pull request digabungkan dan rujukan itu berhenti berfungsi. Lihat panduan naik taraf untuk apa yang diterima oleh setiap pilihan.
+3 -3
View File
@@ -1,4 +1,4 @@
<!-- translation of Upgrading.md, source sha256 cd7640274c6d --> <!-- translation of Upgrading.md, source sha256 bc88ef4f6d7c -->
> Dette er en oversættelse af [`Upgrading`](Upgrading). Den engelske side er autoritativ, og ændringer her bliver overskrevet, næste gang wikien publiceres. > Dette er en oversættelse af [`Upgrading`](Upgrading). Den engelske side er autoritativ, og ændringer her bliver overskrevet, næste gang wikien publiceres.
@@ -24,7 +24,7 @@ De scoped workflows **Sync GitHub mirror metadata** og **Publish wiki pages** le
## Aflæsning af en changelog-post ## Aflæsning af en changelog-post
Åbn `CHANGELOG.md` i `TirSystem/github-action` eller tagget udgivelsesside. En post har op til fire grupper: Åbn `CHANGELOG.md` i `TirSystem/git-workflows` eller tagget udgivelsesside. En post har op til fire grupper:
| Gruppe | Hvad den betyder for dig | | Gruppe | Hvad den betyder for dig |
| --- | --- | | --- | --- |
@@ -41,7 +41,7 @@ En post, der ændrer credentials, tokens eller tilladelser, siger det; kontrolle
```yaml ```yaml
jobs: jobs:
quality: quality:
uses: TirSystem/github-action/.gitea/workflows/quality-checks.yml@v2 uses: TirSystem/git-workflows/.gitea/workflows/quality-checks.yml@v2
``` ```
2. Åbn en pull request, og læs kørslen. En mislykket kontrol viser værktøj, fil og meddelelse (se vejledningen til aflæsning af kvalitetskontrollens resultater). 2. Åbn en pull request, og læs kørslen. En mislykket kontrol viser værktøj, fil og meddelelse (se vejledningen til aflæsning af kvalitetskontrollens resultater).
3. For en udgivelse, der bryder kompatibiliteten, følges opgraderingsnoterne i changelog-posten, og trinnet gentages. 3. For en udgivelse, der bryder kompatibiliteten, følges opgraderingsnoterne i changelog-posten, og trinnet gentages.
+2 -2
View File
@@ -36,7 +36,7 @@ caller workflow, because the scoped workflow publishes `docs/wiki/` on its own
## Reading a changelog entry ## Reading a changelog entry
Open `CHANGELOG.md` of `TirSystem/github-action`, or the release page of the tag. Open `CHANGELOG.md` of `TirSystem/git-workflows`, or the release page of the tag.
An entry has up to four groups: An entry has up to four groups:
| Group | What it means for you | | Group | What it means for you |
@@ -55,7 +55,7 @@ secrets before you upgrade.
```yaml ```yaml
jobs: jobs:
quality: quality:
uses: TirSystem/github-action/.gitea/workflows/quality-checks.yml@v2 uses: TirSystem/git-workflows/.gitea/workflows/quality-checks.yml@v2
``` ```
2. Open a pull request and read the run. A failing check shows the tool, the 2. Open a pull request and read the run. A failing check shows the tool, the
file and the message (see the guide for reading quality-check results). file and the message (see the guide for reading quality-check results).
+3 -3
View File
@@ -1,4 +1,4 @@
<!-- translation of Upgrading.md, source sha256 cd7640274c6d --> <!-- translation of Upgrading.md, source sha256 bc88ef4f6d7c -->
> Ini ialah terjemahan [`Upgrading`](Upgrading). Halaman bahasa Inggeris ialah teks yang sah, dan perubahan di sini akan ditimpa pada penerbitan wiki yang seterusnya. > Ini ialah terjemahan [`Upgrading`](Upgrading). Halaman bahasa Inggeris ialah teks yang sah, dan perubahan di sini akan ditimpa pada penerbitan wiki yang seterusnya.
@@ -24,7 +24,7 @@ Aliran kerja scoped **Sync GitHub mirror metadata** dan **Publish wiki pages** d
## Membaca satu catatan changelog ## Membaca satu catatan changelog
Buka `CHANGELOG.md` bagi `TirSystem/github-action`, atau halaman keluaran tag itu. Satu catatan mempunyai sehingga empat kumpulan: Buka `CHANGELOG.md` bagi `TirSystem/git-workflows`, atau halaman keluaran tag itu. Satu catatan mempunyai sehingga empat kumpulan:
| Kumpulan | Maksudnya untuk anda | | Kumpulan | Maksudnya untuk anda |
| --- | --- | | --- | --- |
@@ -41,7 +41,7 @@ Catatan yang mengubah kelayakan (credentials), token atau kebenaran menyatakanny
```yaml ```yaml
jobs: jobs:
quality: quality:
uses: TirSystem/github-action/.gitea/workflows/quality-checks.yml@v2 uses: TirSystem/git-workflows/.gitea/workflows/quality-checks.yml@v2
``` ```
2. Buka pull request dan baca larian. Semakan yang gagal menunjukkan alat, fail dan mesej (lihat panduan membaca keputusan semakan kualiti). 2. Buka pull request dan baca larian. Semakan yang gagal menunjukkan alat, fail dan mesej (lihat panduan membaca keputusan semakan kualiti).
3. Bagi keluaran yang memecahkan keserasian, ikut nota naik taraf dalam catatan changelog, kemudian ulang. 3. Bagi keluaran yang memecahkan keserasian, ikut nota naik taraf dalam catatan changelog, kemudian ulang.
+23
View File
@@ -0,0 +1,23 @@
# When a repository uses a workflow
Each workflow of this repository has one rule here that says when a repository
of the organisation, in its SQA and QC, should use it. The rule is the opt-in
test: a repository that meets the "Use when" condition calls the workflow, and a
review of that repository (SQA) checks that it does. A repository that does not
meet the condition does not call it.
A new workflow is not finished until its row is in the table below
(`AGENTS.md`, rule "Workflow adoption rules").
| Workflow | Use when | Do not use when | What it gives SQA and QC |
| --- | --- | --- | --- |
| Sync GitHub mirror metadata | Scoped: nothing to do. Every repository of the organisation gets it, so a repository has a GitHub push mirror only if it needs one. | The repository has no GitHub mirror. | The mirror shows the same description and topics as the source of truth. |
| Quality checks | The repository tracks Python (`*.py`) or shell (`*.sh`) files. | It has neither. | Evidence for the code checklists that formatting, typing and shell lint are clean before a merge. Mark the check required in the branch protection. |
| Quality checks C++ | The repository tracks C or C++ files. | It has none. | The same evidence for C and C++, at exact tool versions. |
| Quality checks C# | The repository tracks C# files and can restore packages from the network. | It has none, or cannot reach the package source. | The same evidence for C#, on an exact .NET SDK. |
| Code metrics | The repository has a test suite that writes a Cobertura report and its README or wiki shows size and coverage. | It has no tests, or no report is produced. | Coverage and size as badges, so a reviewer sees them without running anything. |
| English comments | The repository's code comments must be English (the project's language rule) and it takes pull requests. | The project's language rule allows other languages in comments. | Enforces the language rule on every pull request, with the author named. Mark it required to block the merge. |
| Publish wiki pages | Scoped: nothing to do. A repository with a wiki and its pages written as Markdown under `docs/wiki/` is published; one without that folder is skipped. | It has the folder but does not want it published (disable the wiki or use another folder), or the wiki is edited by hand. | The wiki equals the reviewed files; a page change goes through a pull request and its review. |
| Release | Opt-in is not by call: it is for repositories that publish versioned releases pinned by others, and it is run only in this repository. | Not applicable to other repositories. | A tagged, checked release other repositories can pin. |
| Publish accepted milestones | Internal to this repository (it reads this repository's milestones and reviews). A project that keeps `docs/milestones/` and `docs/sqa/reviews/` uses the framework's `templates/ci/` copy. | The repository has no `MIL-*` documents. | Only a milestone that is Accepted with a Go review becomes an issue (the plan-first gate). |
| Validate workflows | Internal: it gates this repository's own pull requests. | Not applicable to other repositories. | Proof that every workflow parses and passes the offline tests. |
+2 -2
View File
@@ -34,7 +34,7 @@ jobs:
needs: tests needs: tests
permissions: permissions:
contents: write contents: write
uses: TirSystem/github-action/.gitea/workflows/code-metrics.yml@v2 uses: TirSystem/git-workflows/.gitea/workflows/code-metrics.yml@v2
with: with:
coverage-artifact: coverage coverage-artifact: coverage
coverage-report: coverage.xml coverage-report: coverage.xml
@@ -49,7 +49,7 @@ jobs:
| `coverage-warn` | `60` | Coverage in percent below which the badge is red | | `coverage-warn` | `60` | Coverage in percent below which the badge is red |
| `coverage-good` | `80` | Coverage in percent from which the badge is green; in between it is yellow | | `coverage-good` | `80` | Coverage in percent from which the badge is green; in between it is yellow |
| `badges-branch` | `badges` | Branch that holds the badge files; it is created when it does not exist | | `badges-branch` | `badges` | Branch that holds the badge files; it is created when it does not exist |
| `tools-ref` | `v2` | Tag or branch of `TirSystem/github-action` from which the scripts in `tools/` are fetched | | `tools-ref` | `v2` | Tag or branch of `TirSystem/git-workflows` from which the scripts in `tools/` are fetched |
Reference the workflow at the major tag (`@v2`) or at an exact tag, never at Reference the workflow at the major tag (`@v2`) or at an exact tag, never at
`main`. A call at an exact tag is pinned completely only when `tools-ref` names `main`. A call at an exact tag is pinned completely only when `tools-ref` names
+1 -1
View File
@@ -16,7 +16,7 @@ on:
jobs: jobs:
english-comments: english-comments:
uses: TirSystem/github-action/.gitea/workflows/english-comments.yml@v2 uses: TirSystem/git-workflows/.gitea/workflows/english-comments.yml@v2
with: with:
exclude: "docs/generated/**" exclude: "docs/generated/**"
allowed-words-file: .english-comments-allowed-words allowed-words-file: .english-comments-allowed-words
+2 -2
View File
@@ -19,7 +19,7 @@ jobs:
quality: quality:
permissions: permissions:
contents: read contents: read
uses: TirSystem/github-action/.gitea/workflows/quality-checks-cpp.yml@v1 uses: TirSystem/git-workflows/.gitea/workflows/quality-checks-cpp.yml@v1
with: with:
std: c++20 std: c++20
``` ```
@@ -31,7 +31,7 @@ jobs:
| `compile-commands-dir` | empty | Directory, relative to the repository root, with a `compile_commands.json` that your pipeline built before the call; when set, clang-tidy uses it and ignores `std` | | `compile-commands-dir` | empty | Directory, relative to the repository root, with a `compile_commands.json` that your pipeline built before the call; when set, clang-tidy uses it and ignores `std` |
| `clang-format-version` | `23.1.3` | Exact version of the clang-format package | | `clang-format-version` | `23.1.3` | Exact version of the clang-format package |
| `clang-tidy-version` | `22.1.8` | Exact version of the clang-tidy package | | `clang-tidy-version` | `22.1.8` | Exact version of the clang-tidy package |
| `tools-ref` | `v2` | Tag or branch of `TirSystem/github-action` from which the script `tools/quality-checks-cpp.sh` is fetched | | `tools-ref` | `v2` | Tag or branch of `TirSystem/git-workflows` from which the script `tools/quality-checks-cpp.sh` is fetched |
Reference the workflow at the major tag (`@v1`) or at an exact tag, never at Reference the workflow at the major tag (`@v1`) or at an exact tag, never at
`main`. A call at an exact tag is pinned completely only when `tools-ref` names `main`. A call at an exact tag is pinned completely only when `tools-ref` names
+2 -2
View File
@@ -20,7 +20,7 @@ jobs:
quality: quality:
permissions: permissions:
contents: read contents: read
uses: TirSystem/github-action/.gitea/workflows/quality-checks-csharp.yml@v1 uses: TirSystem/git-workflows/.gitea/workflows/quality-checks-csharp.yml@v1
with: with:
project: src/App.sln project: src/App.sln
``` ```
@@ -30,7 +30,7 @@ jobs:
| `working-directory` | `.` | Directory, relative to the repository root, whose files are checked | | `working-directory` | `.` | Directory, relative to the repository root, whose files are checked |
| `project` | empty | Solution or project file, relative to `working-directory`; empty uses the single `*.sln` or `*.slnx`, else the single `*.csproj`, that is tracked there | | `project` | empty | Solution or project file, relative to `working-directory`; empty uses the single `*.sln` or `*.slnx`, else the single `*.csproj`, that is tracked there |
| `dotnet-sdk-version` | `10.0.401` | Exact version of the .NET SDK, 10 or later; a channel such as `10.0`, a range and a version below 10 are refused | | `dotnet-sdk-version` | `10.0.401` | Exact version of the .NET SDK, 10 or later; a channel such as `10.0`, a range and a version below 10 are refused |
| `tools-ref` | `v2` | Tag or branch of `TirSystem/github-action` from which the script `tools/quality-checks-csharp.sh` is fetched | | `tools-ref` | `v2` | Tag or branch of `TirSystem/git-workflows` from which the script `tools/quality-checks-csharp.sh` is fetched |
Reference the workflow at the major tag (`@v1`) or at an exact tag, never at Reference the workflow at the major tag (`@v1`) or at an exact tag, never at
`main`. A call at an exact tag is pinned completely only when `tools-ref` names `main`. A call at an exact tag is pinned completely only when `tools-ref` names
+2 -2
View File
@@ -19,7 +19,7 @@ jobs:
quality: quality:
permissions: permissions:
contents: read contents: read
uses: TirSystem/github-action/.gitea/workflows/quality-checks.yml@v1 uses: TirSystem/git-workflows/.gitea/workflows/quality-checks.yml@v1
with: with:
languages: python,shell languages: python,shell
``` ```
@@ -32,7 +32,7 @@ jobs:
| `mypy-version` | `1.11.2` | Version of mypy | | `mypy-version` | `1.11.2` | Version of mypy |
| `shellcheck-py-version` | `0.10.0.1` | Version of the shellcheck-py package (ShellCheck 0.10.0) | | `shellcheck-py-version` | `0.10.0.1` | Version of the shellcheck-py package (ShellCheck 0.10.0) |
| `shfmt-py-version` | `3.11.0.2` | Version of the shfmt-py package (shfmt 3.11.0) | | `shfmt-py-version` | `3.11.0.2` | Version of the shfmt-py package (shfmt 3.11.0) |
| `tools-ref` | `v2` | Tag or branch of `TirSystem/github-action` from which the script `tools/quality-checks.sh` is fetched | | `tools-ref` | `v2` | Tag or branch of `TirSystem/git-workflows` from which the script `tools/quality-checks.sh` is fetched |
Reference the workflow at the major tag (`@v1`) or at an exact tag Reference the workflow at the major tag (`@v1`) or at an exact tag
(`@v1.0.0`), never at `main` and never at the branch of a pull request: that (`@v1.0.0`), never at `main` and never at the branch of a pull request: that
+2 -2
View File
@@ -30,7 +30,7 @@ caller workflow, because the scoped workflow publishes `docs/wiki/` on its own
## Reading a changelog entry ## Reading a changelog entry
Open `CHANGELOG.md` of `TirSystem/github-action`, or the release page of the tag. Open `CHANGELOG.md` of `TirSystem/git-workflows`, or the release page of the tag.
An entry has up to four groups: An entry has up to four groups:
| Group | What it means for you | | Group | What it means for you |
@@ -49,7 +49,7 @@ secrets before you upgrade.
```yaml ```yaml
jobs: jobs:
quality: quality:
uses: TirSystem/github-action/.gitea/workflows/quality-checks.yml@v2 uses: TirSystem/git-workflows/.gitea/workflows/quality-checks.yml@v2
``` ```
2. Open a pull request and read the run. A failing check shows the tool, the 2. Open a pull request and read the run. A failing check shows the tool, the
file and the message (see the guide for reading quality-check results). file and the message (see the guide for reading quality-check results).
+3 -3
View File
@@ -23,7 +23,7 @@ jobs:
- uses: actions/checkout@v4.2.2 - uses: actions/checkout@v4.2.2
- name: Connect Tailscale - name: Connect Tailscale
uses: TirSystem/github-action/actions/connect-tailscale@v2 uses: TirSystem/git-workflows/actions/connect-tailscale@v2
with: with:
oauth-secret: ${{ secrets.TS_OAUTH_SECRET }} oauth-secret: ${{ secrets.TS_OAUTH_SECRET }}
tags: tag:ci tags: tag:ci
@@ -35,14 +35,14 @@ jobs:
- name: Disconnect Tailscale - name: Disconnect Tailscale
if: always() if: always()
uses: TirSystem/github-action/actions/connect-tailscale@v2 uses: TirSystem/git-workflows/actions/connect-tailscale@v2
with: with:
action: down action: down
``` ```
If the short form does not resolve on your instance (Gitea looks for the action If the short form does not resolve on your instance (Gitea looks for the action
on the host set in `DEFAULT_ACTIONS_URL`), use the full address: on the host set in `DEFAULT_ACTIONS_URL`), use the full address:
`https://git.tirsystem.com/TirSystem/github-action/actions/connect-tailscale@v2`. `https://git.tirsystem.com/TirSystem/git-workflows/actions/connect-tailscale@v2`.
## Inputs ## Inputs
+3 -3
View File
@@ -21,7 +21,7 @@ jobs:
- uses: actions/checkout@v4.2.2 - uses: actions/checkout@v4.2.2
- name: Connect the VPN - name: Connect the VPN
uses: TirSystem/github-action/actions/connect-wireguard@v2 uses: TirSystem/git-workflows/actions/connect-wireguard@v2
with: with:
config: ${{ secrets.WG_CONFIG }} config: ${{ secrets.WG_CONFIG }}
health-check-host: 10.8.0.1 health-check-host: 10.8.0.1
@@ -31,14 +31,14 @@ jobs:
- name: Disconnect the VPN - name: Disconnect the VPN
if: always() if: always()
uses: TirSystem/github-action/actions/connect-wireguard@v2 uses: TirSystem/git-workflows/actions/connect-wireguard@v2
with: with:
action: down action: down
``` ```
If the short form does not resolve on your instance (Gitea looks for the action If the short form does not resolve on your instance (Gitea looks for the action
on the host set in `DEFAULT_ACTIONS_URL`), use the full address: on the host set in `DEFAULT_ACTIONS_URL`), use the full address:
`https://git.tirsystem.com/TirSystem/github-action/actions/connect-wireguard@v2`. `https://git.tirsystem.com/TirSystem/git-workflows/actions/connect-wireguard@v2`.
## Inputs ## Inputs