From 372c38b40cf5c1e9d59184b45a71b66ab529e6e7 Mon Sep 17 00:00:00 2001 From: Mike Alfare Date: Thu, 29 Feb 2024 20:11:27 -0500 Subject: [PATCH] update workflows to account for new `dbt-tests-adapter` structure --- .github/actions/build-hatch/action.yml | 6 +- .github/actions/publish-pypi/action.yml | 6 +- .github/actions/publish-results/action.yml | 10 ++- .github/actions/setup-hatch/action.yml | 6 +- .github/workflows/build.yml | 39 +++++----- .github/workflows/changelog-existence.yml | 2 +- .github/workflows/code-quality.yml | 12 +-- .github/workflows/github-release.yml | 2 +- .github/workflows/release.yml | 51 ++++++------ .github/workflows/release_prep_hatch.yml | 90 ++++++++++++++-------- .github/workflows/resubmit-for-triage.yml | 2 +- .github/workflows/unit-tests.yml | 12 +-- 12 files changed, 138 insertions(+), 100 deletions(-) diff --git a/.github/actions/build-hatch/action.yml b/.github/actions/build-hatch/action.yml index 764dc9dc..eec6df79 100644 --- a/.github/actions/build-hatch/action.yml +++ b/.github/actions/build-hatch/action.yml @@ -22,17 +22,17 @@ runs: using: composite steps: - - name: Build artifacts + - name: "Build artifacts" run: ${{ inputs.build-command }} shell: bash working-directory: ${{ inputs.working-dir }} - - name: Check artifacts + - name: "Check artifacts" run: ${{ inputs.check-command }} shell: bash working-directory: ${{ inputs.working-dir }} - - name: Upload artifacts + - name: "Upload artifacts" uses: actions/upload-artifact@v3 with: name: ${{ inputs.archive-name}} diff --git a/.github/actions/publish-pypi/action.yml b/.github/actions/publish-pypi/action.yml index c1346823..e7d92979 100644 --- a/.github/actions/publish-pypi/action.yml +++ b/.github/actions/publish-pypi/action.yml @@ -1,4 +1,4 @@ -name: Publish - PyPI +name: "Publish - PyPI" description: Publish artifacts saved during build step to PyPI inputs: @@ -13,13 +13,13 @@ runs: using: composite steps: - - name: Download artifacts + - name: "Download artifacts" uses: actions/download-artifact@v3 with: name: ${{ inputs.archive-name }} path: . - - name: Publish artifacts to PyPI + - name: "Publish artifacts to PyPI" uses: pypa/gh-action-pypi-publish@release/v1 with: repository-url: ${{ inputs.repository-url }} diff --git a/.github/actions/publish-results/action.yml b/.github/actions/publish-results/action.yml index d863d659..8b47a555 100644 --- a/.github/actions/publish-results/action.yml +++ b/.github/actions/publish-results/action.yml @@ -1,11 +1,12 @@ -name: Publish results +name: "Publish - Test Results" +description: Publish test results with a unique archive name inputs: file-name: description: File type for file name stub (e.g. "unit-tests") required: true python-version: - description: Python version for the file name stub (e.g. "3.8") + description: Python version for the archive name stub (e.g. "3.8") required: true source-file: description: File to be uploaded @@ -14,12 +15,13 @@ inputs: runs: using: composite steps: - - name: Get timestamp + - name: "Get timestamp" id: timestamp run: echo "ts=$(date +'%Y-%m-%dT%H-%M-%S')" >> $GITHUB_OUTPUT #no colons allowed for artifacts shell: bash - - uses: actions/upload-artifact@v3 + - name: "Publish test results to archive" + uses: actions/upload-artifact@v3 with: name: ${{ inputs.file-name }}_python-${{ inputs.python-version }}_${{ steps.timestamp.outputs.ts }}.csv path: ${{ inputs.source-file }} diff --git a/.github/actions/setup-hatch/action.yml b/.github/actions/setup-hatch/action.yml index 7b7780ef..db078778 100644 --- a/.github/actions/setup-hatch/action.yml +++ b/.github/actions/setup-hatch/action.yml @@ -1,4 +1,4 @@ -name: Setup - `hatch` +name: "Setup - `hatch`" description: Setup a python environment with `hatch` installed inputs: @@ -12,11 +12,11 @@ inputs: runs: using: composite steps: - - name: Set up Python ${{ inputs.python-version }} + - name: "Set up Python ${{ inputs.python-version }}" uses: actions/setup-python@v4 with: python-version: ${{ inputs.python-version }} - - name: Install dev dependencies + - name: "Install dev dependencies" run: ${{ inputs.setup-command }} shell: bash diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 33d94ff4..096bf6b3 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -1,5 +1,5 @@ # **what?** -# Verifies python build on all code commited to the repository. This workflow +# Verifies python build on all code committed to the repository. This workflow # should not require any secrets since it runs for PRs from forked repos. By # default, secrets are not passed to workflows running from a forked repos. @@ -19,8 +19,22 @@ on: merge_group: types: [checks_requested] workflow_dispatch: + inputs: + package: + type: choice + description: Choose what to publish + options: + - dbt-adapters + - dbt-tests-adapter + changelog_path: + description: "Path to changelog file" + required: true + type: string workflow_call: inputs: + package: + type: string + description: Choose what to publish changelog_path: description: "Path to changelog file" required: true @@ -30,7 +44,7 @@ permissions: read-all # will cancel previous workflows triggered by the same event and for the same ref for PRs or same SHA otherwise concurrency: - group: ${{ github.workflow }}-${{ github.event_name }}-${{ contains(github.event_name, 'pull_request') && github.event.pull_request.head.ref || github.sha }} + group: ${{ github.workflow }}-${{ github.event_name }}-${{ contains(github.event_name, 'pull_request') && github.event.pull_request.head.ref || github.sha }}-${{ inputs.package }} cancel-in-progress: true defaults: @@ -39,7 +53,7 @@ defaults: jobs: build: - name: Build, Test and publish to PyPi + name: "Build, Test and publish to PyPi" runs-on: ubuntu-latest permissions: id-token: write # IMPORTANT: this permission is mandatory for trusted publishing @@ -47,27 +61,14 @@ jobs: - name: "Check out repository" uses: actions/checkout@v4 - - name: Setup `hatch` - uses: ./.github/actions/setup-hatch - - - name: Build `dbt-adapters` - if: ${{ inputs.package == 'dbt-adapters' }} - uses: ./.github/actions/build-hatch - - - name: Build `dbt-tests-adapter` - if: ${{ inputs.package == 'dbt-tests-adapter' }} - uses: ./.github/actions/build-hatch - with: - working-dir: "./dbt-tests-adapter/" - - - name: Setup `hatch` + - name: "Setup `hatch`" uses: ./.github/actions/setup-hatch - - name: Build `dbt-adapters` + - name: "Build `dbt-adapters`" if: ${{ inputs.package == 'dbt-adapters' }} uses: ./.github/actions/build-hatch - - name: Build `dbt-tests-adapter` + - name: "Build `dbt-tests-adapter`" if: ${{ inputs.package == 'dbt-tests-adapter' }} uses: ./.github/actions/build-hatch with: diff --git a/.github/workflows/changelog-existence.yml b/.github/workflows/changelog-existence.yml index d778f565..87759111 100644 --- a/.github/workflows/changelog-existence.yml +++ b/.github/workflows/changelog-existence.yml @@ -14,7 +14,7 @@ # and when new code is pushed to the branch. The action will get # skipped if the 'Skip Changelog' label is present is any of the labels. -name: Check Changelog Entry +name: "Check Changelog Entry" on: pull_request_target: diff --git a/.github/workflows/code-quality.yml b/.github/workflows/code-quality.yml index 4f5b392e..b0360386 100644 --- a/.github/workflows/code-quality.yml +++ b/.github/workflows/code-quality.yml @@ -1,4 +1,4 @@ -name: Code Quality +name: "Code Quality" on: push: @@ -21,20 +21,20 @@ concurrency: jobs: lint: - name: Code Quality + name: "Code Quality" runs-on: ubuntu-latest steps: - - name: Check out repository + - name: "Check out repository" uses: actions/checkout@v4 with: persist-credentials: false - - name: Setup `hatch` + - name: "Setup `hatch`" uses: ./.github/actions/setup-hatch - - name: Run linters + - name: "Run linters" run: hatch run lint:all - - name: Run typechecks + - name: "Run typechecks" run: hatch run typecheck:all diff --git a/.github/workflows/github-release.yml b/.github/workflows/github-release.yml index edd25172..0975fedd 100644 --- a/.github/workflows/github-release.yml +++ b/.github/workflows/github-release.yml @@ -22,7 +22,7 @@ # 3. If a release exists for this commit under a different tag, fail. # 4. If the commit is already associated with a different release, fail. -name: GitHub Release +name: "GitHub Release" on: workflow_call: diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 72c87cb7..3b85c333 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -1,12 +1,12 @@ -name: Release -run-name: Release ${{ inputs.package }}==${{ inputs.version_number }} to ${{ inputs.deploy-to }} +name: "Release" +run-name: "Release ${{ inputs.package }}==${{ inputs.version_number }} to ${{ inputs.deploy-to }}" on: workflow_dispatch: inputs: package: + description: "Choose what to publish" type: choice - description: Choose what to publish options: - dbt-adapters - dbt-tests-adapter @@ -15,8 +15,8 @@ on: type: string required: true deploy-to: + description: "Choose where to publish" type: choice - description: Choose where to publish options: - prod - test @@ -25,36 +25,32 @@ on: description: "Nightly release to dev environment" type: boolean default: false - required: false target_branch: description: "The branch to release from" type: string - required: false default: main workflow_call: inputs: package: + description: "Choose what to publish" type: string - description: Choose what to publish required: true version_number: description: "The release version number (i.e. 1.0.0b1)" type: string required: true deploy-to: + description: "Choose where to publish" type: string default: prod - required: false nightly_release: description: "Nightly release to dev environment" type: boolean default: false - required: false target_branch: description: "The branch to release from" type: string - required: false default: main # this is the permission that allows creating a new release @@ -72,14 +68,26 @@ defaults: shell: bash jobs: - bump-version-generate-changelog: - name: "Bump package version, Generate changelog" - uses: dbt-labs/dbt-adapters/.github/workflows/release_prep_hatch.yml@main + bump-version-generate-changelog-dbt-adapters: + name: "Bump package version, Generate changelog - dbt-adapters" + uses: .github/workflows/release_prep_hatch.yml with: version_number: ${{ inputs.version_number }} deploy_to: ${{ inputs.deploy-to }} nightly_release: ${{ inputs.nightly_release }} target_branch: ${{ inputs.target_branch }} + run-unit-tests: true + secrets: inherit + + bump-version-generate-changelog-dbt-tests-adapter: + name: "Bump package version, Generate changelog - dbt-tests-adapter" + uses: .github/workflows/release_prep_hatch.yml + with: + version_number: ${{ inputs.version_number }} + deploy_to: ${{ inputs.deploy-to }} + nightly_release: ${{ inputs.nightly_release }} + target_branch: ${{ inputs.target_branch }} + working-dir: "./dbt-tests-adapter" secrets: inherit log-outputs-bump-version-generate-changelog: @@ -106,29 +114,29 @@ jobs: ref: ${{ needs.bump-version-generate-changelog.outputs.final_sha }} - name: "Setup `hatch`" - uses: dbt-labs/dbt-adapters/.github/actions/setup-hatch@main + uses: .github/actions/setup-hatch - name: "Build `dbt-adapters`" if: ${{ inputs.package == 'dbt-adapters' }} - uses: dbt-labs/dbt-adapters/.github/actions/build-hatch@main + uses: .github/actions/build-hatch with: changelog-path: ${{ needs.bump-version-generate-changelog.outputs.changelog_path }} archive-name: ${{ inputs.version_number }}-${{ inputs.package }}-${{ inputs.deploy-to }} - name: "Build `dbt-tests-adapter`" if: ${{ inputs.package == 'dbt-tests-adapter' }} - uses: dbt-labs/dbt-adapters/.github/actions/build-hatch@main + uses: .github/actions/build-hatch with: changelog-path: ${{ needs.bump-version-generate-changelog.outputs.changelog_path }} - working-dir: "./dbt-tests-adapter/" archive-name: ${{ inputs.version_number }}-${{ inputs.package }}-${{ inputs.deploy-to }} + working-dir: "./dbt-tests-adapter/" github-release: name: "GitHub Release" # ToDo: update GH release to handle adding dbt-tests-adapter and dbt-adapter assets to the same release if: ${{ !failure() && !cancelled() && inputs.package == 'dbt-adapters' }} needs: [build-and-test, bump-version-generate-changelog] - uses: dbt-labs/dbt-adapters/.github/workflows/github-release.yml@main + uses: .github/workflows/github-release.yml with: sha: ${{ needs.bump-version-generate-changelog.outputs.final_sha }} version_number: ${{ inputs.version_number }} @@ -139,6 +147,7 @@ jobs: pypi-release: name: "Publish to PyPI" runs-on: ubuntu-latest + if: ${{ !failure() && !cancelled() }} needs: [github-release] environment: name: ${{ inputs.deploy-to }} @@ -148,9 +157,7 @@ jobs: uses: actions/checkout@v4 - name: "Publish to PyPI" - uses: dbt-labs/dbt-adapters/.github/actions/publish-pypi@main + uses: .github/actions/publish-pypi with: - repository-url: ${{ vars.PYPI_REPOSITORY_URL }} archive-name: ${{ inputs.version_number }}-${{ inputs.package }}-${{ inputs.deploy-to }} - - + repository-url: ${{ vars.PYPI_REPOSITORY_URL }} diff --git a/.github/workflows/release_prep_hatch.yml b/.github/workflows/release_prep_hatch.yml index 38c399d9..3c3dd296 100644 --- a/.github/workflows/release_prep_hatch.yml +++ b/.github/workflows/release_prep_hatch.yml @@ -33,34 +33,38 @@ # 2. Generate the changelog (via changie) if there is no markdown file for this version # -name: Version Bump and Changelog Generation +name: "Version Bump and Changelog Generation" run-name: Bump ${{ inputs.package }}==${{ inputs.version_number }} for release to ${{ inputs.deploy_to }} and generate changelog + on: workflow_call: inputs: version_number: - required: true type: string + required: true deploy_to: type: string default: prod - required: false nightly_release: type: boolean default: false - required: false env_setup_script_path: type: string - required: false default: '' + run-unit-tests: + type: boolean + default: false run-integration-tests: type: boolean default: false target_branch: description: "The branch to release from" type: string - required: false default: main + working-dir: + description: "The working directory to use for run statements" + type: string + default: "./" outputs: changelog_path: description: The path to the changelog for this version @@ -103,9 +107,9 @@ jobs: # ENVIRONMENT VARIABLES echo Python target version: ${{ env.PYTHON_TARGET_VERSION }} echo Notification prefix: ${{ env.NOTIFICATION_PREFIX }} + audit-changelog: runs-on: ubuntu-latest - outputs: changelog_path: ${{ steps.set_path.outputs.changelog_path }} exists: ${{ steps.set_existence.outputs.exists }} @@ -139,6 +143,7 @@ jobs: echo "changelog_path=$path" >> $GITHUB_OUTPUT title="Changelog path" echo "::notice title=${{ env.NOTIFICATION_PREFIX }}: $title::$changelog_path" + - name: "Set Changelog Existence For Subsequent Jobs" id: set_existence run: | @@ -148,6 +153,7 @@ jobs: does_exist=true fi echo "exists=$does_exist">> $GITHUB_OUTPUT + - name: "[Notification] Set Changelog Existence For Subsequent Jobs" run: | title="Changelog exists" @@ -158,6 +164,7 @@ jobs: message="Changelog file ${{ steps.set_path.outputs.changelog_path }} doesn't exist" fi echo "::notice title=${{ env.NOTIFICATION_PREFIX }}: $title::$message" + - name: "[DEBUG] Print Outputs" run: | echo changelog_path: ${{ steps.set_path.outputs.changelog_path }} @@ -168,7 +175,6 @@ jobs: audit-version-in-code: runs-on: ubuntu-latest - outputs: up_to_date: ${{ steps.version-check.outputs.up_to_date }} @@ -178,7 +184,7 @@ jobs: with: ref: ${{ inputs.target_branch }} - - name: Setup `hatch` + - name: "Setup `hatch`" uses: ./.github/actions/setup-hatch - name: "Check Current Version In Code" @@ -191,6 +197,8 @@ jobs: is_updated=true fi echo "up_to_date=$is_updated" >> $GITHUB_OUTPUT + working-directory: ${{ inputs.working-dir }} + - name: "[Notification] Check Current Version In Code" run: | title="Version check" @@ -201,14 +209,15 @@ jobs: message="The version in the codebase differs from the provided version" fi echo "::notice title=${{ env.NOTIFICATION_PREFIX }}: $title::$message" + - name: "[DEBUG] Print Outputs" run: | echo up_to_date: ${{ steps.version-check.outputs.up_to_date }} skip-generate-changelog: + if: needs.audit-changelog.outputs.exists == 'true' runs-on: ubuntu-latest needs: [audit-changelog] - if: needs.audit-changelog.outputs.exists == 'true' steps: - name: "Changelog Exists, Skip Generating New Changelog" @@ -219,9 +228,9 @@ jobs: echo "::notice title=${{ env.NOTIFICATION_PREFIX }}: $title::$message" skip-version-bump: + if: needs.audit-version-in-code.outputs.up_to_date == 'true' runs-on: ubuntu-latest needs: [audit-version-in-code] - if: needs.audit-version-in-code.outputs.up_to_date == 'true' steps: - name: "Version Already Bumped" @@ -232,10 +241,9 @@ jobs: echo "::notice title=${{ env.NOTIFICATION_PREFIX }}: $title::$message" create-temp-branch: + if: needs.audit-changelog.outputs.exists == 'false' || needs.audit-version-in-code.outputs.up_to_date == 'false' runs-on: ubuntu-latest needs: [audit-changelog, audit-version-in-code] - if: needs.audit-changelog.outputs.exists == 'false' || needs.audit-version-in-code.outputs.up_to_date == 'false' - outputs: branch_name: ${{ steps.variables.outputs.branch_name }} @@ -270,34 +278,41 @@ jobs: - name: "[DEBUG] Print Outputs" run: | echo branch_name ${{ steps.variables.outputs.branch_name }} + generate-changelog-bump-version: runs-on: ubuntu-latest needs: [audit-changelog, audit-version-in-code, create-temp-branch] steps: - name: "Checkout ${{ github.repository }} Branch ${{ needs.create-temp-branch.outputs.branch_name }}" - uses: actions/checkout@v3 + uses: actions/checkout@v4 with: ref: ${{ needs.create-temp-branch.outputs.branch_name }} - - name: Setup `hatch` + + - name: "Setup `hatch`" uses: ./.github/actions/setup-hatch + - name: "Add Homebrew To PATH" run: | echo "/home/linuxbrew/.linuxbrew/bin:/home/linuxbrew/.linuxbrew/sbin" >> $GITHUB_PATH + - name: "Install Homebrew Packages" run: | brew install pre-commit brew tap miniscruff/changie https://github.com/miniscruff/changie brew install changie + - name: "Set json File Name" id: json_file run: | echo "name=output_$GITHUB_RUN_ID.json" >> $GITHUB_OUTPUT + - name: "Get Core Team Membership" run: | gh api -H "Accept: application/vnd.github+json" orgs/dbt-labs/teams/core-group/members > ${{ steps.json_file.outputs.name }} env: GH_TOKEN: ${{ secrets.IT_TEAM_MEMBERSHIP }} + - name: "Set Core Team Membership for Changie Contributors exclusion" id: set_team_membership run: | @@ -305,9 +320,11 @@ jobs: echo $team_list team_list_single=$(echo $team_list | tr '\n' ' ') echo "CHANGIE_CORE_TEAM=$team_list_single" >> $GITHUB_ENV + - name: "Delete the json File" run: | rm ${{ steps.json_file.outputs.name }} + - name: "Generate Release Changelog" if: needs.audit-changelog.outputs.exists == 'false' run: | @@ -322,6 +339,7 @@ jobs: fi changie merge git status + - name: "Check Changelog Created Successfully" if: needs.audit-changelog.outputs.exists == 'false' run: | @@ -335,16 +353,19 @@ jobs: echo "::error title=${{ env.NOTIFICATION_PREFIX }}: $title::$message" exit 1 fi + - name: "Bump Version To ${{ inputs.version_number }}" if: needs.audit-version-in-code.outputs.up_to_date == 'false' - run: | - hatch version ${{ inputs.version_number }} + run: hatch version ${{ inputs.version_number }} + working-directory: ${{ inputs.working-dir }} + - name: "[Notification] Bump Version To ${{ inputs.version_number }}" if: needs.audit-version-in-code.outputs.up_to_date == 'false' run: | title="Version bump" message="Version successfully bumped in codebase to ${{ inputs.version_number }}" echo "::notice title=${{ env.NOTIFICATION_PREFIX }}: $title::$message" + # TODO: can these 2 steps be done via hatch? probably. # this step will fail on whitespace errors but also correct them - name: "Remove Trailing Whitespace Via Pre-commit" @@ -352,12 +373,14 @@ jobs: run: | pre-commit run trailing-whitespace --files dbt/adapters/__about__.py CHANGELOG.md .changes/* git status + # this step will fail on newline errors but also correct them - name: "Removing Extra Newlines Via Pre-commit" continue-on-error: true run: | pre-commit run end-of-file-fixer --files dbt/adapters/__about__.py CHANGELOG.md .changes/* git status + - name: "Commit & Push Changes" run: | #Data for commit @@ -373,27 +396,30 @@ jobs: git push run-unit-tests: + if: inputs.run-unit-tests == true runs-on: ubuntu-latest needs: [create-temp-branch, generate-changelog-bump-version] steps: - name: "Checkout ${{ github.repository }} Branch ${{ needs.create-temp-branch.outputs.branch_name }}" - uses: actions/checkout@v3 + uses: actions/checkout@v4 with: ref: ${{ needs.create-temp-branch.outputs.branch_name }} + - name: "Setup `hatch`" uses: ./.github/actions/setup-hatch + - name: "Run Unit Tests" run: hatch run unit-tests:all run-integration-tests: - runs-on: ubuntu-20.04 - needs: [create-temp-branch, generate-changelog-bump-version] if: inputs.run-integration-tests == true + runs-on: ubuntu-latest + needs: [create-temp-branch, generate-changelog-bump-version] steps: - name: "Checkout ${{ github.repository }} Branch ${{ needs.create-temp-branch.outputs.branch_name }}" - uses: actions/checkout@v3 + uses: actions/checkout@v4 with: ref: ${{ needs.create-temp-branch.outputs.branch_name }} @@ -436,8 +462,6 @@ jobs: run: hatch run test:integration merge-changes-into-target-branch: - runs-on: ubuntu-latest - needs: [run-unit-tests, run-integration-tests, create-temp-branch, audit-version-in-code, audit-changelog] if: | !failure() && !cancelled() && inputs.deploy_to == 'prod' && @@ -445,6 +469,9 @@ jobs: needs.audit-changelog.outputs.exists == 'false' || needs.audit-version-in-code.outputs.up_to_date == 'false' ) + runs-on: ubuntu-latest + needs: [run-unit-tests, run-integration-tests, create-temp-branch, audit-version-in-code, audit-changelog] + steps: - name: "[Debug] Print Variables" run: | @@ -452,8 +479,9 @@ jobs: echo inputs.deploy_to: ${{ inputs.deploy_to }} echo needs.audit-changelog.outputs.exists: ${{ needs.audit-changelog.outputs.exists }} echo needs.audit-version-in-code.outputs.up_to_date: ${{ needs.audit-version-in-code.outputs.up_to_date }} + - name: "Checkout Repo ${{ github.repository }}" - uses: actions/checkout@v3 + uses: actions/checkout@v4 - name: "Merge Changes Into ${{ inputs.target_branch }}" uses: everlytic/branch-merge@1.1.5 @@ -470,6 +498,8 @@ jobs: echo "::notice title=${{ env.NOTIFICATION_PREFIX }}: $title::$message" determine-release-branch: + # always run this job, regardless of if the dependant jobs were skipped + if: ${{ !failure() && !cancelled() }} runs-on: ubuntu-latest needs: [ @@ -478,9 +508,6 @@ jobs: audit-changelog, audit-version-in-code, ] - # always run this job, regardless of if the dependant jobs were skipped - if: ${{ !failure() && !cancelled() }} - # Get the sha that will be released. If the changelog already exists on the input sha and the version has already been bumped, # then it is what we will release. Otherwise we generated a changelog and did the version bump in this workflow and there is a # new sha to use from the merge we just did. Grab that here instead. @@ -493,6 +520,7 @@ jobs: echo new_branch: ${{ needs.create-temp-branch.outputs.branch_name }} echo changelog_exists: ${{ needs.audit-changelog.outputs.exists }} echo up_to_date: ${{ needs.audit-version-in-code.outputs.up_to_date }} + - name: "Resolve Branch To Checkout" id: resolve_branch run: | @@ -504,11 +532,13 @@ jobs: branch="${{ inputs.target_branch }}" fi echo "target_branch=$branch" >> $GITHUB_OUTPUT + - name: "[Notification] Resolve Branch To Checkout" run: | title="Branch pick" message="The ${{ steps.resolve_branch.outputs.target_branch }} branch will be used for release" echo "::notice title=${{ env.NOTIFICATION_PREFIX }}: $title::$message" + - name: "Checkout Resolved Branch - ${{ steps.resolve_branch.outputs.target_branch }}" uses: actions/checkout@v3 with: @@ -519,10 +549,8 @@ jobs: - name: "Resolve Commit SHA For Release" id: resolve_commit_sha - run: | - echo "release_sha=$(git rev-parse HEAD)" >> $GITHUB_OUTPUT + run: echo "release_sha=$(git rev-parse HEAD)" >> $GITHUB_OUTPUT - name: "Remove Temp Branch - ${{ needs.create-temp-branch.outputs.branch_name }}" if: ${{ inputs.deploy_to == 'prod' && inputs.nightly_release == 'false' && needs.create-temp-branch.outputs.branch_name != '' }} - run: | - git push origin -d ${{ needs.create-temp-branch.outputs.branch_name }} \ No newline at end of file + run: git push origin -d ${{ needs.create-temp-branch.outputs.branch_name }} \ No newline at end of file diff --git a/.github/workflows/resubmit-for-triage.yml b/.github/workflows/resubmit-for-triage.yml index 385ef820..a55d77b2 100644 --- a/.github/workflows/resubmit-for-triage.yml +++ b/.github/workflows/resubmit-for-triage.yml @@ -10,7 +10,7 @@ # **when?** # This will run when a comment is added to an issue and that issue has an `awaiting_response` label. -name: Resubmit for Triage +name: "Resubmit for Triage" on: issue_comment diff --git a/.github/workflows/unit-tests.yml b/.github/workflows/unit-tests.yml index 26ff4aaa..6a5ee08c 100644 --- a/.github/workflows/unit-tests.yml +++ b/.github/workflows/unit-tests.yml @@ -1,4 +1,4 @@ -name: Unit Tests +name: "Unit Tests" on: push: @@ -17,7 +17,7 @@ concurrency: jobs: unit: - name: Unit Tests + name: "Unit Tests" runs-on: ubuntu-latest strategy: @@ -26,21 +26,21 @@ jobs: python-version: ["3.8", "3.9", "3.10", "3.11"] steps: - - name: Check out repository + - name: "Check out repository" uses: actions/checkout@v4 with: persist-credentials: false - - name: Setup `hatch` + - name: "Setup `hatch`" uses: ./.github/actions/setup-hatch with: python-version: ${{ matrix.python-version }} - - name: Run unit tests + - name: "Run unit tests" run: hatch run unit-tests:all shell: bash - - name: Publish results + - name: "Publish results" uses: ./.github/actions/publish-results if: always() with: