updated node #90
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: 'setup stackql' | |
on: | |
push: | |
branches: | |
- main | |
- 'develop-**' | |
pull_request: | |
defaults: | |
run: | |
shell: bash | |
jobs: | |
stackql-test-matrix: | |
name: Stackql local run on ${{ matrix.os }} ${{ matrix.use_wrapper && 'with' || 'without' }} wrapper | |
runs-on: ${{ matrix.os }} | |
strategy: | |
matrix: | |
os: [ubuntu-latest, windows-latest, macos-latest] | |
use_wrapper: [true, false] | |
steps: | |
- name: Checkout | |
uses: actions/[email protected] | |
- name: Setup Stackql | |
uses: ./ | |
with: | |
use_wrapper: ${{matrix.use_wrapper}} | |
- name: Get Stackql Version | |
id: get-stackql-version | |
run: | | |
echo "::set-output name=stackql_version::$(stackql --version)" | |
- name: Validate Stackql Version | |
run: | | |
# Retrieve the output from the previous step | |
VERSION_OUTPUT="${{ steps.get-stackql-version.outputs.stackql_version }}" | |
echo "Version output: $VERSION_OUTPUT" | |
# Regex patterns to validate different parts | |
SEMVER_REGEX="v[0-9]+\.[0-9]+\.[0-9]+" | |
PLATFORM_REGEX="(Linux|Darwin|Windows)" | |
DATE_REGEX="\b\d{4}-\d{2}-\d{2}\b" | |
SHA_REGEX="\([0-9a-f]{7}\)" | |
# Perform validation | |
if ! [[ "$VERSION_OUTPUT" =~ $SEMVER_REGEX ]]; then | |
echo "Semantic version does not match expected format" | |
exit 1 | |
fi | |
if ! [[ "$VERSION_OUTPUT" =~ $PLATFORM_REGEX ]]; then | |
echo "Platform information does not match expected formats" | |
exit 1 | |
fi | |
if ! [[ "$VERSION_OUTPUT" =~ $DATE_REGEX ]]; then | |
echo "Build date does not match expected format" | |
exit 1 | |
fi | |
if ! [[ "$VERSION_OUTPUT" =~ $SHA_REGEX ]]; then | |
echo "Commit SHA does not match expected format" | |
exit 1 | |
fi | |
echo "All components of the version output are validated successfully." | |
# - name: Validate Stackql Version | |
# run: | | |
# stackql --version | |
# - name: Use GitHub Provider | |
# run: | | |
# stackql exec -i ./examples/github-example.iql | |
# env: | |
# STACKQL_GITHUB_USERNAME: ${{ secrets.STACKQL_GITHUB_USERNAME }} | |
# STACKQL_GITHUB_PASSWORD: ${{ secrets.STACKQL_GITHUB_PASSWORD }} | |
# - name: Use Google Provider | |
# run: | | |
# stackql exec -i ./examples/google-example.iql | |
# env: | |
# GOOGLE_CREDENTIALS : ${{ secrets.GOOGLE_CREDENTIALS }} | |
# - name: Handle error | |
# if: ${{ matrix.use_wrapper}} | |
# continue-on-error: true | |
# run: | ## specify a query file that doesnt exist | |
# stackql exec -i ./examples/does-not-exist.iql |