From 8eefa6f96a91fddef4ac081e192aa80deb3af3fc Mon Sep 17 00:00:00 2001 From: Jay Hesselberth Date: Fri, 17 Oct 2025 17:06:16 -0600 Subject: [PATCH 1/5] GHA workflow for checking non-English sites Triggered manually, not run automatically --- .github/workflows/site-languages.yml | 87 ++++++++++++++++++++++++++++ 1 file changed, 87 insertions(+) create mode 100644 .github/workflows/site-languages.yml diff --git a/.github/workflows/site-languages.yml b/.github/workflows/site-languages.yml new file mode 100644 index 000000000..cd6285827 --- /dev/null +++ b/.github/workflows/site-languages.yml @@ -0,0 +1,87 @@ +on: + workflow_dispatch: + +name: pkgdown-i18n-netlify + +jobs: + build-and-deploy: + runs-on: ubuntu-latest + strategy: + fail-fast: false + matrix: + include: + - lang: ca + locale: ca_ES.UTF-8 + - lang: de + locale: de_DE.UTF-8 + - lang: dk + locale: da_DK.UTF-8 + - lang: es + locale: es_ES.UTF-8 + - lang: fr + locale: fr_FR.UTF-8 + - lang: ko + locale: ko_KR.UTF-8 + - lang: pt + locale: pt_PT.UTF-8 + - lang: tr + locale: tr_TR.UTF-8 + - lang: zh_CN + locale: zh_CN.UTF-8 + env: + GITHUB_PAT: ${{ secrets.GITHUB_TOKEN }} + steps: + - uses: actions/checkout@v4 + + - uses: r-lib/actions/setup-tinytex@v2 + + - uses: r-lib/actions/setup-pandoc@v2 + + - uses: r-lib/actions/setup-r@v2 + with: + use-public-rspm: true + + - uses: r-lib/actions/setup-r-dependencies@v2 + with: + extra-packages: any::pkgdown, local::. + needs: website + + - name: Generate locale ${{ matrix.locale }} + run: | + sudo locale-gen ${{ matrix.locale }} + sudo update-locale LANG=${{ matrix.locale }} + shell: bash + + - name: Install package + run: R CMD INSTALL . + + - name: Set lang in _pkgdown.yml + run: | + if [ "${{ matrix.lang }}" != "en" ]; then + echo "lang: ${{ matrix.lang }}" >> _pkgdown.yml + fi + shell: bash + + - name: Build site for ${{ matrix.lang }} + run: pkgdown::build_site() + shell: Rscript {0} + env: + LANG: ${{ matrix.locale }} + + - name: Create index file + run: | + echo ' ' > ./docs/index.html + + - name: Deploy to Netlify + uses: nwtgck/actions-netlify@v3.0 + with: + publish-dir: "./docs" + production-branch: main + github-token: ${{ secrets.GITHUB_TOKEN }} + deploy-message: "Deploy ${{ matrix.lang }}: ${{ github.event.pull_request.title || github.event.head_commit.message }} (${{ github.sha }})" + alias: ${{ matrix.lang }} + enable-commit-comment: false + enable-github-deployment: false + env: + NETLIFY_AUTH_TOKEN: ${{ secrets.NETLIFY_AUTH_TOKEN }} + NETLIFY_SITE_ID: ${{ secrets.NETLIFY_SITE_ID }} From af22e58573918c03e361322795868f5d1947342b Mon Sep 17 00:00:00 2001 From: Jay Hesselberth Date: Fri, 17 Oct 2025 17:08:28 -0600 Subject: [PATCH 2/5] Need to run on pull request to check it --- .github/workflows/site-languages.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.github/workflows/site-languages.yml b/.github/workflows/site-languages.yml index cd6285827..6c7b6b01c 100644 --- a/.github/workflows/site-languages.yml +++ b/.github/workflows/site-languages.yml @@ -1,4 +1,6 @@ on: + pull_request: + branches: [main, master] workflow_dispatch: name: pkgdown-i18n-netlify From a5a7ddb70e0464c835a966212945982a6d0510dd Mon Sep 17 00:00:00 2001 From: Jay Hesselberth Date: Fri, 17 Oct 2025 17:18:48 -0600 Subject: [PATCH 3/5] Simply build and update yaml lang --- .github/workflows/site-languages.yml | 36 ++++++++++++++-------------- 1 file changed, 18 insertions(+), 18 deletions(-) diff --git a/.github/workflows/site-languages.yml b/.github/workflows/site-languages.yml index 6c7b6b01c..6abf5e35e 100644 --- a/.github/workflows/site-languages.yml +++ b/.github/workflows/site-languages.yml @@ -16,20 +16,20 @@ jobs: locale: ca_ES.UTF-8 - lang: de locale: de_DE.UTF-8 - - lang: dk - locale: da_DK.UTF-8 - - lang: es - locale: es_ES.UTF-8 - - lang: fr - locale: fr_FR.UTF-8 - - lang: ko - locale: ko_KR.UTF-8 - - lang: pt - locale: pt_PT.UTF-8 - - lang: tr - locale: tr_TR.UTF-8 - - lang: zh_CN - locale: zh_CN.UTF-8 + # - lang: dk + # locale: da_DK.UTF-8 + # - lang: es + # locale: es_ES.UTF-8 + # - lang: fr + # locale: fr_FR.UTF-8 + # - lang: ko + # locale: ko_KR.UTF-8 + # - lang: pt + # locale: pt_PT.UTF-8 + # - lang: tr + # locale: tr_TR.UTF-8 + # - lang: zh_CN + # locale: zh_CN.UTF-8 env: GITHUB_PAT: ${{ secrets.GITHUB_TOKEN }} steps: @@ -59,10 +59,10 @@ jobs: - name: Set lang in _pkgdown.yml run: | - if [ "${{ matrix.lang }}" != "en" ]; then - echo "lang: ${{ matrix.lang }}" >> _pkgdown.yml - fi - shell: bash + config <- yaml::read_yaml("_pkgdown.yml") + config$lang <- "${{ matrix.lang }}" + yaml::write_yaml(config, "_pkgdown.yml") + shell: Rscript {0} - name: Build site for ${{ matrix.lang }} run: pkgdown::build_site() From 3d61affec20c1c17038bffc1e8bcf92cb37e0119 Mon Sep 17 00:00:00 2001 From: Jay Hesselberth Date: Fri, 17 Oct 2025 17:25:19 -0600 Subject: [PATCH 4/5] Fix config path --- .github/workflows/site-languages.yml | 148 +++++++++++++-------------- 1 file changed, 74 insertions(+), 74 deletions(-) diff --git a/.github/workflows/site-languages.yml b/.github/workflows/site-languages.yml index 6abf5e35e..cfbb92f1e 100644 --- a/.github/workflows/site-languages.yml +++ b/.github/workflows/site-languages.yml @@ -1,89 +1,89 @@ on: - pull_request: - branches: [main, master] - workflow_dispatch: + pull_request: + branches: [main, master] + workflow_dispatch: name: pkgdown-i18n-netlify jobs: - build-and-deploy: - runs-on: ubuntu-latest - strategy: - fail-fast: false - matrix: - include: - - lang: ca - locale: ca_ES.UTF-8 - - lang: de - locale: de_DE.UTF-8 - # - lang: dk - # locale: da_DK.UTF-8 - # - lang: es - # locale: es_ES.UTF-8 - # - lang: fr - # locale: fr_FR.UTF-8 - # - lang: ko - # locale: ko_KR.UTF-8 - # - lang: pt - # locale: pt_PT.UTF-8 - # - lang: tr - # locale: tr_TR.UTF-8 - # - lang: zh_CN - # locale: zh_CN.UTF-8 - env: - GITHUB_PAT: ${{ secrets.GITHUB_TOKEN }} - steps: - - uses: actions/checkout@v4 + build-and-deploy: + runs-on: ubuntu-latest + strategy: + fail-fast: false + matrix: + include: + - lang: ca + locale: ca_ES.UTF-8 + - lang: de + locale: de_DE.UTF-8 + # - lang: dk + # locale: da_DK.UTF-8 + # - lang: es + # locale: es_ES.UTF-8 + # - lang: fr + # locale: fr_FR.UTF-8 + # - lang: ko + # locale: ko_KR.UTF-8 + # - lang: pt + # locale: pt_PT.UTF-8 + # - lang: tr + # locale: tr_TR.UTF-8 + # - lang: zh_CN + # locale: zh_CN.UTF-8 + env: + GITHUB_PAT: ${{ secrets.GITHUB_TOKEN }} + steps: + - uses: actions/checkout@v4 - - uses: r-lib/actions/setup-tinytex@v2 + - uses: r-lib/actions/setup-tinytex@v2 - - uses: r-lib/actions/setup-pandoc@v2 + - uses: r-lib/actions/setup-pandoc@v2 - - uses: r-lib/actions/setup-r@v2 - with: - use-public-rspm: true + - uses: r-lib/actions/setup-r@v2 + with: + use-public-rspm: true - - uses: r-lib/actions/setup-r-dependencies@v2 - with: - extra-packages: any::pkgdown, local::. - needs: website + - uses: r-lib/actions/setup-r-dependencies@v2 + with: + extra-packages: any::pkgdown, local::. + needs: website - - name: Generate locale ${{ matrix.locale }} - run: | - sudo locale-gen ${{ matrix.locale }} - sudo update-locale LANG=${{ matrix.locale }} - shell: bash + - name: Generate locale ${{ matrix.locale }} + run: | + sudo locale-gen ${{ matrix.locale }} + sudo update-locale LANG=${{ matrix.locale }} + shell: bash - - name: Install package - run: R CMD INSTALL . + - name: Install package + run: R CMD INSTALL . - - name: Set lang in _pkgdown.yml - run: | - config <- yaml::read_yaml("_pkgdown.yml") - config$lang <- "${{ matrix.lang }}" - yaml::write_yaml(config, "_pkgdown.yml") - shell: Rscript {0} + - name: Set lang in _pkgdown.yml + run: | + config <- yaml::read_yaml("pkgdown/_pkgdown.yml") + config$lang <- "${{ matrix.lang }}" + yaml::write_yaml(config, "pkgdown/_pkgdown.yml") + shell: Rscript {0} - - name: Build site for ${{ matrix.lang }} - run: pkgdown::build_site() - shell: Rscript {0} - env: - LANG: ${{ matrix.locale }} + - name: Build site for ${{ matrix.lang }} + run: pkgdown::build_site() + shell: Rscript {0} + env: + LANG: ${{ matrix.locale }} - - name: Create index file - run: | - echo ' ' > ./docs/index.html + - name: Create index file + run: | + echo ' ' > ./docs/index.html - - name: Deploy to Netlify - uses: nwtgck/actions-netlify@v3.0 - with: - publish-dir: "./docs" - production-branch: main - github-token: ${{ secrets.GITHUB_TOKEN }} - deploy-message: "Deploy ${{ matrix.lang }}: ${{ github.event.pull_request.title || github.event.head_commit.message }} (${{ github.sha }})" - alias: ${{ matrix.lang }} - enable-commit-comment: false - enable-github-deployment: false - env: - NETLIFY_AUTH_TOKEN: ${{ secrets.NETLIFY_AUTH_TOKEN }} - NETLIFY_SITE_ID: ${{ secrets.NETLIFY_SITE_ID }} + - name: Deploy to Netlify + uses: nwtgck/actions-netlify@v3.0 + with: + publish-dir: "./docs" + production-branch: main + github-token: ${{ secrets.GITHUB_TOKEN }} + deploy-message: "Deploy ${{ matrix.lang }}: ${{ github.event.pull_request.title || github.event.head_commit.message }} (${{ github.sha }})" + alias: ${{ matrix.lang }} + enable-commit-comment: false + enable-github-deployment: false + env: + NETLIFY_AUTH_TOKEN: ${{ secrets.NETLIFY_AUTH_TOKEN }} + NETLIFY_SITE_ID: ${{ secrets.NETLIFY_SITE_ID }} From 7ca74505cd8faf2e828d98fa68c9f452ef62a339 Mon Sep 17 00:00:00 2001 From: Jay Hesselberth Date: Fri, 17 Oct 2025 17:36:20 -0600 Subject: [PATCH 5/5] Add remaining languages and run only on dispatch --- .github/workflows/site-languages.yml | 30 +++++++++++++--------------- 1 file changed, 14 insertions(+), 16 deletions(-) diff --git a/.github/workflows/site-languages.yml b/.github/workflows/site-languages.yml index cfbb92f1e..addf93388 100644 --- a/.github/workflows/site-languages.yml +++ b/.github/workflows/site-languages.yml @@ -1,6 +1,4 @@ on: - pull_request: - branches: [main, master] workflow_dispatch: name: pkgdown-i18n-netlify @@ -16,20 +14,20 @@ jobs: locale: ca_ES.UTF-8 - lang: de locale: de_DE.UTF-8 - # - lang: dk - # locale: da_DK.UTF-8 - # - lang: es - # locale: es_ES.UTF-8 - # - lang: fr - # locale: fr_FR.UTF-8 - # - lang: ko - # locale: ko_KR.UTF-8 - # - lang: pt - # locale: pt_PT.UTF-8 - # - lang: tr - # locale: tr_TR.UTF-8 - # - lang: zh_CN - # locale: zh_CN.UTF-8 + - lang: dk + locale: da_DK.UTF-8 + - lang: es + locale: es_ES.UTF-8 + - lang: fr + locale: fr_FR.UTF-8 + - lang: ko + locale: ko_KR.UTF-8 + - lang: pt + locale: pt_PT.UTF-8 + - lang: tr + locale: tr_TR.UTF-8 + - lang: zh_CN + locale: zh_CN.UTF-8 env: GITHUB_PAT: ${{ secrets.GITHUB_TOKEN }} steps: