Prepare ES directory for translation #280
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Pull request pipeline | |
# checks are only on the draft and root directories because that is where the changes should be | |
on: | |
pull_request: | |
branches: | |
- main | |
workflow_dispatch: | |
env: | |
RESOURCE_PATH: release/assets/images:release/assets:release:assets/images:assets/images/logos:assets/images/logos/publish | |
# for security reasons the github actions are pinned to specific release versions | |
jobs: | |
link_checker: | |
name: Link checker | |
runs-on: ubuntu-24.04 | |
steps: | |
- name: Checkout markdown | |
uses: actions/[email protected] | |
- name: Link Checker | |
uses: lycheeverse/[email protected] | |
with: | |
# skip the jekyll files under '_includes' directory, only check the draft and root directories | |
args: >- | |
--no-progress | |
--max-retries 5 | |
--exclude-path './_includes/*.html' | |
'./draft/**/*.md' | |
'*.md' | |
fail: true | |
env: | |
GITHUB_TOKEN: ${{secrets.GITHUB_TOKEN}} | |
md_linter: | |
name: Lint markdown | |
runs-on: ubuntu-24.04 | |
steps: | |
- name: Checkout markdown | |
uses: actions/[email protected] | |
- name: Lint markdown | |
uses: DavidAnson/[email protected] | |
with: | |
config: '.markdownlint.yaml' | |
globs: 'draft/**/*.md' | |
# only check the draft directory, that is where the changes should be | |
spell_checker: | |
name: Check spelling | |
runs-on: ubuntu-24.04 | |
steps: | |
- name: Checkout markdown | |
uses: actions/[email protected] | |
- name: Spell check EN draft | |
uses: rojopolis/[email protected] | |
with: | |
config_path: .spellcheck-en.yaml | |
# checks the draft directory with an EN dictionary | |
check_es: | |
name: Check ES translation | |
runs-on: ubuntu-24.04 | |
steps: | |
- name: Checkout markdown | |
uses: actions/[email protected] | |
- name: Spell check ES release | |
uses: rojopolis/[email protected] | |
with: | |
config_path: .spellcheck-es.yaml | |
# checks the release-es directory with an ES dictionary | |
- name: Lint ES markdown | |
uses: DavidAnson/[email protected] | |
with: | |
config: '.markdownlint.yaml' | |
globs: 'release-es/**/*.md' | |
check_pt-br: | |
name: Check PT-BR translation | |
runs-on: ubuntu-24.04 | |
steps: | |
- name: Checkout markdown | |
uses: actions/[email protected] | |
- name: Set up Python | |
uses: actions/[email protected] | |
with: | |
python-version: '3.10' | |
- name: Install pyspelling | |
run: | | |
python -m pip install --upgrade pip setuptools | |
python -m pip install pyspelling | |
sudo apt-get install aspell aspell-pt | |
- name: Spell check PT-BR release | |
run: | | |
python -m pyspelling --config .spellcheck-pt-br.yaml | |
- name: Lint PT-BR markdown | |
uses: DavidAnson/[email protected] | |
with: | |
config: '.markdownlint.yaml' | |
globs: 'release-pt-br/**/*.md' | |
export_draft: | |
name: Export epub and pdf (Draft) | |
runs-on: ubuntu-24.04 | |
needs: [link_checker, md_linter, spell_checker] | |
steps: | |
- name: Checkout markdown | |
uses: actions/[email protected] | |
- name: Combine markdown | |
run: | | |
mkdir publish | |
mkdir assets/images/logos/publish | |
mkdir draft/temp | |
tail --lines=+14 -q $(find draft -name "*[0-9]*.md" | sort) > draft/temp/draft.markdown | |
sed -i "s/{: .image-right }/{height=180px}/g" draft/temp/draft.markdown | |
sed -i "s/{: .image-right-small }/{height=26px}/g" draft/temp/draft.markdown | |
- name: Export to pdf | |
uses: docker://pandoc/latex:3.1 | |
with: | |
args: >- | |
--from=markdown | |
--output=publish/OWASP_Developer_Guide.draft.pdf | |
--resource-path=${{ env.RESOURCE_PATH }} | |
-fmarkdown-implicit_figures | |
draft/title.pdf.yaml | |
draft/temp/draft.markdown | |
- name: Export to epub | |
uses: docker://pandoc/latex:3.1 | |
with: | |
args: >- | |
--from=markdown | |
--output=publish/OWASP_Developer_Guide.draft.epub | |
--resource-path=${{ env.RESOURCE_PATH }} | |
-fmarkdown-implicit_figures | |
draft/title.yaml | |
draft/temp/draft.markdown | |
- name: Save pdfs and epubs | |
uses: actions/[email protected] | |
with: | |
name: export-draft | |
path: publish | |
export_es: | |
name: Export epub and pdf (ES) | |
runs-on: ubuntu-24.04 | |
needs: check_es | |
steps: | |
- name: Checkout markdown | |
uses: actions/[email protected] | |
- name: Combine ES markdown | |
run: | | |
mkdir publish | |
mkdir assets/images/logos/publish | |
mkdir release/temp | |
tail --lines=+14 -q $(find release-es -name "*[0-9]*.md" | sort) > release/temp/release.markdown | |
sed -i "s/{: .image-right }/{height=180px}/g" release/temp/release.markdown | |
sed -i "s/{: .image-right-small }/{height=26px}/g" release/temp/release.markdown | |
- name: Export to pdf | |
uses: docker://pandoc/latex:3.1 | |
with: | |
args: >- | |
--from=markdown | |
--output=publish/OWASP_Developer_Guide.ES.pdf | |
--resource-path=${{ env.RESOURCE_PATH }} | |
-fmarkdown-implicit_figures | |
release-es/title.pdf.yaml | |
release/temp/release.markdown | |
- name: Export to epub | |
uses: docker://pandoc/latex:3.1 | |
with: | |
args: >- | |
--from=markdown | |
--output=publish/OWASP_Developer_Guide.ES.epub | |
--resource-path=${{ env.RESOURCE_PATH }} | |
-fmarkdown-implicit_figures | |
release-es/title.yaml | |
release/temp/release.markdown | |
- name: Save pdfs and epubs | |
uses: actions/[email protected] | |
with: | |
name: export-es | |
path: publish | |
export_pt-br: | |
name: Export epub and pdf (PT-BR) | |
runs-on: ubuntu-24.04 | |
needs: check_pt-br | |
steps: | |
- name: Checkout markdown | |
uses: actions/[email protected] | |
- name: Combine PT-BR markdown | |
run: | | |
mkdir publish | |
mkdir assets/images/logos/publish | |
mkdir release/temp | |
tail --lines=+14 -q $(find release-pt-br -name "*[0-9]*.md" | sort) > release/temp/release.markdown | |
sed -i "s/{: .image-right }/{height=180px}/g" release/temp/release.markdown | |
sed -i "s/{: .image-right-small }/{height=26px}/g" release/temp/release.markdown | |
- name: Export to pdf | |
uses: docker://pandoc/latex:3.1 | |
with: | |
args: >- | |
--from=markdown | |
--output=publish/OWASP_Developer_Guide.PT-BR.pdf | |
--resource-path=${{ env.RESOURCE_PATH }} | |
-fmarkdown-implicit_figures | |
release-pt-br/title.pdf.yaml | |
release/temp/release.markdown | |
- name: Export to epub | |
uses: docker://pandoc/latex:3.1 | |
with: | |
args: >- | |
--from=markdown | |
--output=publish/OWASP_Developer_Guide.PT-BR.epub | |
--resource-path=${{ env.RESOURCE_PATH }} | |
-fmarkdown-implicit_figures | |
release-pt-br/title.yaml | |
release/temp/release.markdown | |
- name: Save pdfs and epubs | |
uses: actions/[email protected] | |
with: | |
name: export-pt-br | |
path: publish |