Add tapico env var #9
Workflow file for this run
This file contains hidden or 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: Pre-Release Check | ||
|
Check failure on line 1 in .github/workflows/pre-release.yml
|
||
| on: | ||
| workflow_dispatch: | ||
| inputs: | ||
| version: | ||
| description: 'Version bump type to simulate' | ||
| required: true | ||
| type: choice | ||
| options: | ||
| - patch | ||
| - minor | ||
| - major | ||
| jobs: | ||
| test: | ||
| name: Run Tests | ||
| uses: ./.github/workflows/test-ruby.yml | ||
| permissions: | ||
| contents: read | ||
| docker-build: | ||
| name: Test Docker Build | ||
| needs: [test] | ||
| uses: ./.github/workflows/docker-build.yml | ||
| with: | ||
| push: false | ||
| version: test-${{ github.run_number }} | ||
| permissions: | ||
| contents: read | ||
| packages: write | ||
| attestations: write | ||
| id-token: write | ||
| version-check: | ||
| name: Check Version Calculation | ||
| runs-on: ubuntu-latest | ||
| needs: [test, typecheck] | ||
| outputs: | ||
| current: ${{ steps.current.outputs.version }} | ||
| new: ${{ steps.new.outputs.version }} | ||
| steps: | ||
| - uses: actions/checkout@v5 | ||
| with: | ||
| fetch-depth: 0 | ||
| - name: Get current version | ||
| id: current | ||
| run: | | ||
| CURRENT_VERSION=$(git describe --tags --abbrev=0 2>/dev/null || echo "v0.0.0") | ||
| CURRENT_VERSION=${CURRENT_VERSION#v} | ||
| echo "version=$CURRENT_VERSION" >> "$GITHUB_OUTPUT" | ||
| - name: Calculate new version | ||
| id: new | ||
| run: | | ||
| CURRENT="${{ steps.current.outputs.version }}" | ||
| IFS='.' read -r -a VERSION_PARTS <<< "$CURRENT" | ||
| MAJOR=${VERSION_PARTS[0]} | ||
| MINOR=${VERSION_PARTS[1]} | ||
| PATCH=${VERSION_PARTS[2]} | ||
| case "${{ inputs.version }}" in | ||
| major) | ||
| NEW_VERSION="$((MAJOR + 1)).0.0" | ||
| ;; | ||
| minor) | ||
| NEW_VERSION="${MAJOR}.$((MINOR + 1)).0" | ||
| ;; | ||
| patch) | ||
| NEW_VERSION="${MAJOR}.${MINOR}.$((PATCH + 1))" | ||
| ;; | ||
| esac | ||
| echo "version=$NEW_VERSION" >> "$GITHUB_OUTPUT" | ||
| - name: Display version info | ||
| run: | | ||
| echo "Current version: ${{ steps.current.outputs.version }}" | ||
| echo "New version would be: ${{ steps.new.outputs.version }}" | ||
| summary: | ||
| name: Pre-Release Summary | ||
| runs-on: ubuntu-latest | ||
| needs: [test, typecheck, docker-build, version-check] | ||
| if: always() | ||
| steps: | ||
| - name: Summary | ||
| run: | | ||
| echo "## Pre-Release Check Summary" >> $GITHUB_STEP_SUMMARY | ||
| echo "" >> $GITHUB_STEP_SUMMARY | ||
| echo "### Version Information" >> $GITHUB_STEP_SUMMARY | ||
| echo "- Current: v${{ needs.version-check.outputs.current }}" >> $GITHUB_STEP_SUMMARY | ||
| echo "- Would become: v${{ needs.version-check.outputs.new }}" >> $GITHUB_STEP_SUMMARY | ||
| echo "" >> $GITHUB_STEP_SUMMARY | ||
| echo "### Check Results" >> $GITHUB_STEP_SUMMARY | ||
| echo "| Check | Status |" >> $GITHUB_STEP_SUMMARY | ||
| echo "|-------|--------|" >> $GITHUB_STEP_SUMMARY | ||
| echo "| Tests | ${{ needs.test.result == 'success' && '✅' || '❌' }} |" >> $GITHUB_STEP_SUMMARY | ||
| echo "| Type Check | ${{ needs.typecheck.result == 'success' && '✅' || '❌' }} |" >> $GITHUB_STEP_SUMMARY | ||
| echo "| Docker Build | ${{ needs.docker-build.result == 'success' && '✅' || '❌' }} |" >> $GITHUB_STEP_SUMMARY | ||
| echo "" >> $GITHUB_STEP_SUMMARY | ||
| if [[ "${{ needs.test.result }}" == "success" && \ | ||
| "${{ needs.typecheck.result }}" == "success" && \ | ||
| "${{ needs.docker-build.result }}" == "success" ]]; then | ||
| echo "✅ **All checks passed! Ready for release.**" >> $GITHUB_STEP_SUMMARY | ||
| else | ||
| echo "❌ **Some checks failed. Please fix issues before releasing.**" >> $GITHUB_STEP_SUMMARY | ||
| fi | ||