diff --git a/.github/workflows/gh-pages.yaml b/.github/workflows/gh-pages.yaml index e57068d9..08d7156a 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,16 @@ 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}" cat go.mod + - name: Get translations + run: | + hugo mod get "github.com/owaspsamm/i18n-FR@markdown" - name: Passing hugo mod files id: modFiles run: | @@ -54,13 +63,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 +84,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: | 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/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 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"