From 95643500c78e90468610d03f6d43ac0b4345daf8 Mon Sep 17 00:00:00 2001 From: Jan Calanog Date: Tue, 29 Jul 2025 10:50:53 +0200 Subject: [PATCH] Add 'Set up docs-builder' action --- actions/setup-docs-builder/README.md | 42 +++++++++++++++++++++++++ actions/setup-docs-builder/action.yml | 44 +++++++++++++++++++++++++++ 2 files changed, 86 insertions(+) create mode 100644 actions/setup-docs-builder/README.md create mode 100644 actions/setup-docs-builder/action.yml diff --git a/actions/setup-docs-builder/README.md b/actions/setup-docs-builder/README.md new file mode 100644 index 000000000..32b02d275 --- /dev/null +++ b/actions/setup-docs-builder/README.md @@ -0,0 +1,42 @@ + + +# Set up docs-builder CLI + + +Set up docs-builder CLI for use in actions + + +## Inputs + + +| Name | Description | Required | Default | +|----------------|----------------------------------------------|----------|-----------------------| +| `version` | The docs-builder version to download and use | `false` | `latest` | +| `github-token` | GitHub token | `true` | `${{ github.token }}` | + + +## Outputs + +| Name | Description | +|------|-------------| + + +## Usage + + +```yaml + +jobs: + build: + runs-on: ubuntu-latest + steps: + - name: Set up docs-builder + uses: elastic/docs-builder/actions/setup-docs-builder@main + version: 'latest' + + - run: docs-builder --version +``` + diff --git a/actions/setup-docs-builder/action.yml b/actions/setup-docs-builder/action.yml new file mode 100644 index 000000000..fa9228c86 --- /dev/null +++ b/actions/setup-docs-builder/action.yml @@ -0,0 +1,44 @@ +name: Set up docs-builder CLI + +description: 'Set up docs-builder CLI for use in actions' + +inputs: + version: + required: false + default: 'latest' + description: 'The docs-builder version to download and use' + github-token: + required: true + description: 'GitHub token' + default: '${{ github.token }}' + +runs: + using: composite + + steps: + - name: acquire docs-builder binary + shell: bash + run: | + if [[ "${DOCS_BUILDER_VERSION}" == "edge" ]]; then + docker cp $(docker create --name tc ghcr.io/elastic/docs-builder:edge):/app/docs-builder . && docker rm tc + exit 0; + fi + + if [[ "${DOCS_BUILDER_VERSION}" == "latest" ]]; then + DOCS_BUILDER_VERSION="" # empty string to get the latest version + fi + + gh release download "${DOCS_BUILDER_VERSION}" --pattern 'docs-builder-linux-x64.zip' --repo elastic/docs-builder + gh attestation verify ./docs-builder-linux-x64.zip -R elastic/docs-builder + unzip -p ./docs-builder-linux-x64.zip docs-builder > docs-builder + + env: + DOCS_BUILDER_VERSION: '${{ inputs.version }}' + GH_TOKEN: '${{ inputs.github-token }}' + + - name: Add builder to /usr/local/bin + shell: bash + run: | + cp docs-builder /usr/local/bin/docs-builder + chmod +x /usr/local/bin/docs-builder + echo "::notice::docs-builder-version=$(docs-builder --version)"