From 649c59c36a2dad2339cca6b2523429196c70cea8 Mon Sep 17 00:00:00 2001 From: BackNot Date: Mon, 2 Sep 2024 15:57:48 +0300 Subject: [PATCH 1/4] Made the workflow use French translation repository to collect hugo module. Made the deploy available to be started manually (from the Actions tab). Made updateHugoMod be run not only on repository dispatch --- .github/workflows/gh-pages.yaml | 28 ++++++++++++++++++++++------ 1 file changed, 22 insertions(+), 6 deletions(-) diff --git a/.github/workflows/gh-pages.yaml b/.github/workflows/gh-pages.yaml index e57068d9..f3f1c43d 100644 --- a/.github/workflows/gh-pages.yaml +++ b/.github/workflows/gh-pages.yaml @@ -2,26 +2,31 @@ name: github pages on: push: branches: - - main # Set a branch to deploy + - main + paths-ignore: + - .github/workflows/*.yml + - .github/workflows/*.yaml repository_dispatch: types: [samm-core-released] + workflow_dispatch: env: hugo_version: '0.81.0' jobs: updateHugoMod: runs-on: ubuntu-latest - if: github.event_name == 'repository_dispatch' outputs: goMod: ${{ steps.modFiles.outputs.goMod }} goSum: ${{ steps.modFiles.outputs.goSum }} steps: - name: Parse semver string + if: github.event_name == 'repository_dispatch' id: semver_parser uses: booxmedialtd/ws-action-parse-semver@v1 with: input_string: ${{ github.event.client_payload.release }} version_extractor_regex: 'v(.*)$' - name: Check release semver sanity + if: github.event_name == 'repository_dispatch' env: RELEASE: "v${{ steps.semver_parser.outputs.fullversion }}" run: | @@ -39,12 +44,17 @@ jobs: hugo-version: ${{ env.hugo_version }} extended: true - name: Get new release and commit to main + if: github.event_name == 'repository_dispatch' env: RELEASE: "v${{ steps.semver_parser.outputs.fullversion }}" run: | echo "We got a new SAMM release: v${{ steps.semver_parser.outputs.fullversion }}${RELEASE}" - hugo mod get "github.com/owaspsamm/core@markdown/${RELEASE}" + hugo mod get "github.com/BackNot/core@markdown/${RELEASE}" cat go.mod + - name: Get translations + run: | + hugo mod get "github.com/BackNot/i18n-ES@markdown" + hugo mod get "github.com/BackNot/i18n-FR@markdown" - name: Passing hugo mod files id: modFiles run: | @@ -54,13 +64,19 @@ jobs: echo EOF } >> "$GITHUB_OUTPUT" echo "goSum=$(cat go.sum)" >> "$GITHUB_OUTPUT" - # Do not commit files until we can verify the previous steps are working + - name: Set commit message + run: | + if [ -z "${{ github.event.client_payload.release }}" ]; then + echo "COMMIT_MESSAGE='Updated translations'" >> $GITHUB_ENV + else + echo "COMMIT_MESSAGE='New SAMM release: ${{ github.event.client_payload.release }}'" >> $GITHUB_ENV + fi - name: Commit updated files to git uses: EndBug/add-and-commit@v9 with: add: '["go.mod", "go.sum"]' default_author: github_actions - message: 'New SAMM release: ${{ github.event.client_payload.release }}' + message: "${{ env.COMMIT_MESSAGE }}" deploy: runs-on: ubuntu-latest needs: updateHugoMod @@ -69,7 +85,7 @@ jobs: - uses: actions/checkout@v3 with: submodules: true # Fetch Hugo themes (true OR recursive) - fetch-depth: 0 # Fetch all history for .GitInfo and .Lastmod + fetch-depth: 0 # Fetch all history for .GitInfo and .Lastmodd - name: Get hugo mod files if: ${{ needs.updateHugoMod.result == 'success' }} run: | From 5ea424a6740660cb85386f0e43c8c3136ab57713 Mon Sep 17 00:00:00 2001 From: BackNot Date: Mon, 2 Sep 2024 15:59:27 +0300 Subject: [PATCH 2/4] Added correct model repositories --- .github/workflows/gh-pages.yaml | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/.github/workflows/gh-pages.yaml b/.github/workflows/gh-pages.yaml index f3f1c43d..08d7156a 100644 --- a/.github/workflows/gh-pages.yaml +++ b/.github/workflows/gh-pages.yaml @@ -49,12 +49,11 @@ jobs: RELEASE: "v${{ steps.semver_parser.outputs.fullversion }}" run: | echo "We got a new SAMM release: v${{ steps.semver_parser.outputs.fullversion }}${RELEASE}" - hugo mod get "github.com/BackNot/core@markdown/${RELEASE}" + hugo mod get "github.com/owaspsamm/core@markdown/${RELEASE}" cat go.mod - name: Get translations run: | - hugo mod get "github.com/BackNot/i18n-ES@markdown" - hugo mod get "github.com/BackNot/i18n-FR@markdown" + hugo mod get "github.com/owaspsamm/i18n-FR@markdown" - name: Passing hugo mod files id: modFiles run: | From ecc0b1979e3ea927400df132cc255437852f5837 Mon Sep 17 00:00:00 2001 From: BackNot Date: Mon, 2 Sep 2024 16:05:55 +0300 Subject: [PATCH 3/4] Added French language as module --- config/_default/config.toml | 20 +++++++++++++------- content/en/model.md | 2 ++ i18n/fr.yaml | 2 ++ 3 files changed, 17 insertions(+), 7 deletions(-) create mode 100644 i18n/fr.yaml diff --git a/config/_default/config.toml b/config/_default/config.toml index de54fb35..2cf84d34 100644 --- a/config/_default/config.toml +++ b/config/_default/config.toml @@ -35,6 +35,16 @@ paginate = 10 target = "content/business-function" lang = "en" +[[module.imports]] + # content + path = "github.com/owaspsamm/i18n-FR" + disabled = false + + [[module.imports.mounts]] + source = "business-function" + target = "content/business-function" + lang = "fr" + [menu] # Main menu @@ -400,11 +410,7 @@ defaultContentLanguage = "en" languageName = "English" weight = 1 contentDir = "content/en" - [languages.es] - languageName = "Español" + [languages.fr] + languageName = "Français" weight = 2 - contentDir = "content/es" - - - - + contentDir = "content/fr" diff --git a/content/en/model.md b/content/en/model.md index c622b5b9..c2a06eb1 100644 --- a/content/en/model.md +++ b/content/en/model.md @@ -4,6 +4,8 @@ description: The model keywords: ["model","How do I","questions","what if"] --- +{{< language-dropdown >}} + ## SAMM model overview {{< model-table >}} diff --git a/i18n/fr.yaml b/i18n/fr.yaml new file mode 100644 index 00000000..6aa4fedf --- /dev/null +++ b/i18n/fr.yaml @@ -0,0 +1,2 @@ +- id: selectLanguage + translation: "Sélectionnez une langue" From f6496a166afe6bbb59d38caa4b9cbe96fb9e11b9 Mon Sep 17 00:00:00 2001 From: BackNot Date: Mon, 9 Sep 2024 10:38:12 +0300 Subject: [PATCH 4/4] Added French translation of model.md (grabbed from opened pull requests from Crowdin) --- content/fr/model.md | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) create mode 100644 content/fr/model.md diff --git a/content/fr/model.md b/content/fr/model.md new file mode 100644 index 00000000..364e4de9 --- /dev/null +++ b/content/fr/model.md @@ -0,0 +1,23 @@ +--- +title: Le modèle +description: Le modèle +keywords: ["modèle", "Comment faire", "questions", "Et si"] +--- + +{{< language-dropdown >}} + +## Aperçu du modèle SAMM + +{{< model-table >}} + +## Introduction + +La mission du Software Assurance Maturity Model (SAMM) de l'OWASP est d'être un modèle de maturité de premier plan pour l'assurance logicielle qui fournit à tous les types d'organisations une façon efficace et mesurable d'analyser et d'améliorer leur posture en matière de sécurité logicielle. OWASP SAMM prend en charge la totalité du cycle de vie logiciel, notamment le développement et l’acquisition, et est indépendant de toute technologie et de tout processus. Il est intentionnellement construit pour être évolutif et centré sur les risques par nature. + +Le modèle original (v1.0) a été écrit par Pravir Chandra et date de 2009. Au cours des dix dernières années, il a fait ses preuves en tant que modèle largement utilisé et efficace pour l'amélioration des pratiques dans la sécurité des logiciels à travers différents types d'organisations dans le monde. La communauté a contribué aux traductions et aux outils associés au modèle afin de faciliter son adoption et son alignement. Avec la version 2.0, nous améliorons encore le modèle pour faire face à certaines de ses limitations actuelles. + +Après une période intensive de discussions sur la meilleure manière d'avancer, avec la contribution de ceux qui mettent en oeuvre le modèle et en lien avec la communauté de l'OWASP qui s'est mobilisée lors des sommets en Europe et aux États-Unis, nous avons adopté une nouvelle approche pour la version 2.0 en nous basant sur les retours de terrain que nous avons recueillis. + +Pour un aperçu des modifications de la version 2, lisez notre [notes de version 2 à propos de SAMM](/release-notes-v2). + +Nous avons également créé un {{< external-link "https://drive.google.com/file/d/1cI3Qzfrly_X89z7StLWI5p_Jfqs0-OZv/view?usp=sharing" "Version PDF">}} du modèle. \ No newline at end of file