mirror of https://github.com/databricks/cli.git
75 lines
2.7 KiB
YAML
75 lines
2.7 KiB
YAML
name: publish-winget
|
|
|
|
on:
|
|
workflow_dispatch:
|
|
inputs:
|
|
tag:
|
|
description: 'Tag to publish'
|
|
default: ''
|
|
|
|
jobs:
|
|
publish-to-winget-pkgs:
|
|
runs-on:
|
|
group: databricks-deco-testing-runner-group
|
|
labels: ubuntu-latest-deco
|
|
|
|
environment: release
|
|
|
|
steps:
|
|
- name: Checkout repository and submodules
|
|
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
|
|
|
# When updating the version of komac, make sure to update the checksum in the next step.
|
|
# Find both at https://github.com/russellbanks/Komac/releases.
|
|
- name: Download komac binary
|
|
run: |
|
|
curl -s -L -o $RUNNER_TEMP/komac-2.9.0-x86_64-unknown-linux-gnu.tar.gz https://github.com/russellbanks/Komac/releases/download/v2.9.0/komac-2.9.0-x86_64-unknown-linux-gnu.tar.gz
|
|
|
|
- name: Verify komac binary
|
|
run: |
|
|
echo "d07a12831ad5418fee715488542a98ce3c0e591d05c850dd149fe78432be8c4c $RUNNER_TEMP/komac-2.9.0-x86_64-unknown-linux-gnu.tar.gz" | sha256sum -c -
|
|
|
|
- name: Untar komac binary to temporary path
|
|
run: |
|
|
mkdir -p $RUNNER_TEMP/komac
|
|
tar -xzf $RUNNER_TEMP/komac-2.9.0-x86_64-unknown-linux-gnu.tar.gz -C $RUNNER_TEMP/komac
|
|
|
|
- name: Add komac to PATH
|
|
run: echo "$RUNNER_TEMP/komac" >> $GITHUB_PATH
|
|
|
|
- name: Confirm komac version
|
|
run: komac --version
|
|
|
|
# Use the tag from the input, or the ref name if the input is not provided.
|
|
# The ref name is equal to the tag name when this workflow is triggered by the "sign-cli" command.
|
|
- name: Strip "v" prefix from version
|
|
id: strip_version
|
|
run: echo "version=$(echo ${{ inputs.tag || github.ref_name }} | sed 's/^v//')" >> "$GITHUB_OUTPUT"
|
|
|
|
- name: Get URLs of signed Windows binaries
|
|
id: get_windows_urls
|
|
run: |
|
|
urls=$(
|
|
gh api https://api.github.com/repos/databricks/cli/releases/tags/${{ inputs.tag || github.ref_name }} | \
|
|
jq -r .assets[].browser_download_url | \
|
|
grep -E '_windows_.*-signed\.zip$' | \
|
|
tr '\n' ' '
|
|
)
|
|
if [ -z "$urls" ]; then
|
|
echo "No signed Windows binaries found" >&2
|
|
exit 1
|
|
fi
|
|
echo "urls=$urls" >> "$GITHUB_OUTPUT"
|
|
env:
|
|
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
|
|
|
- name: Publish to Winget
|
|
run: |
|
|
komac update Databricks.DatabricksCLI \
|
|
--version ${{ steps.strip_version.outputs.version }} \
|
|
--submit \
|
|
--urls ${{ steps.get_windows_urls.outputs.urls }} \
|
|
env:
|
|
KOMAC_FORK_OWNER: eng-dev-ecosystem-bot
|
|
GITHUB_TOKEN: ${{ secrets.ENG_DEV_ECOSYSTEM_BOT_TOKEN }}
|