Compare commits

...

1 Commits

Author SHA1 Message Date
Emily Rockman
0e5cf2e94a set up testing 2025-03-05 09:05:51 -06:00

View File

@@ -107,7 +107,7 @@ jobs:
needs: [job-setup] needs: [job-setup]
if: ${{ !inputs.only_docker }} if: ${{ !inputs.only_docker }}
uses: dbt-labs/dbt-release/.github/workflows/release-prep.yml@main uses: dbt-labs/dbt-release/.github/workflows/release-prep.yml@er/ubuntu-deprecation
with: with:
sha: ${{ needs.job-setup.outputs.starting_sha }} sha: ${{ needs.job-setup.outputs.starting_sha }}
@@ -119,152 +119,152 @@ jobs:
secrets: inherit secrets: inherit
log-outputs-bump-version-generate-changelog: # log-outputs-bump-version-generate-changelog:
name: "[Log output] Bump package version, Generate changelog" # name: "[Log output] Bump package version, Generate changelog"
if: ${{ !failure() && !cancelled() && !inputs.only_docker }} # if: ${{ !failure() && !cancelled() && !inputs.only_docker }}
needs: [bump-version-generate-changelog] # needs: [bump-version-generate-changelog]
runs-on: ubuntu-latest # runs-on: ubuntu-latest
steps: # steps:
- name: Print variables # - name: Print variables
run: | # run: |
echo Final SHA : ${{ needs.bump-version-generate-changelog.outputs.final_sha }} # echo Final SHA : ${{ needs.bump-version-generate-changelog.outputs.final_sha }}
echo Changelog path: ${{ needs.bump-version-generate-changelog.outputs.changelog_path }} # echo Changelog path: ${{ needs.bump-version-generate-changelog.outputs.changelog_path }}
build-test-package: # build-test-package:
name: Build, Test, Package # name: Build, Test, Package
if: ${{ !failure() && !cancelled() && !inputs.only_docker }} # if: ${{ !failure() && !cancelled() && !inputs.only_docker }}
needs: [job-setup, bump-version-generate-changelog] # needs: [job-setup, bump-version-generate-changelog]
uses: dbt-labs/dbt-release/.github/workflows/build.yml@main # uses: dbt-labs/dbt-release/.github/workflows/build.yml@main
with: # with:
sha: ${{ needs.bump-version-generate-changelog.outputs.final_sha }} # sha: ${{ needs.bump-version-generate-changelog.outputs.final_sha }}
version_number: ${{ inputs.version_number }} # version_number: ${{ inputs.version_number }}
changelog_path: ${{ needs.bump-version-generate-changelog.outputs.changelog_path }} # changelog_path: ${{ needs.bump-version-generate-changelog.outputs.changelog_path }}
build_script_path: "scripts/build-dist.sh" # build_script_path: "scripts/build-dist.sh"
s3_bucket_name: "core-team-artifacts" # s3_bucket_name: "core-team-artifacts"
package_test_command: "dbt --version" # package_test_command: "dbt --version"
test_run: ${{ inputs.test_run }} # test_run: ${{ inputs.test_run }}
nightly_release: ${{ inputs.nightly_release }} # nightly_release: ${{ inputs.nightly_release }}
secrets: # secrets:
AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }} # AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }}
AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }} # AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
github-release: # github-release:
name: GitHub Release # name: GitHub Release
if: ${{ !failure() && !cancelled() && !inputs.only_docker }} # if: ${{ !failure() && !cancelled() && !inputs.only_docker }}
needs: [bump-version-generate-changelog, build-test-package] # needs: [bump-version-generate-changelog, build-test-package]
uses: dbt-labs/dbt-release/.github/workflows/github-release.yml@main # uses: dbt-labs/dbt-release/.github/workflows/github-release.yml@main
with: # with:
sha: ${{ needs.bump-version-generate-changelog.outputs.final_sha }} # sha: ${{ needs.bump-version-generate-changelog.outputs.final_sha }}
version_number: ${{ inputs.version_number }} # version_number: ${{ inputs.version_number }}
changelog_path: ${{ needs.bump-version-generate-changelog.outputs.changelog_path }} # changelog_path: ${{ needs.bump-version-generate-changelog.outputs.changelog_path }}
test_run: ${{ inputs.test_run }} # test_run: ${{ inputs.test_run }}
pypi-release: # pypi-release:
name: PyPI Release # name: PyPI Release
needs: [github-release] # needs: [github-release]
uses: dbt-labs/dbt-release/.github/workflows/pypi-release.yml@main # uses: dbt-labs/dbt-release/.github/workflows/pypi-release.yml@main
with: # with:
version_number: ${{ inputs.version_number }} # version_number: ${{ inputs.version_number }}
test_run: ${{ inputs.test_run }} # test_run: ${{ inputs.test_run }}
secrets: # secrets:
PYPI_API_TOKEN: ${{ secrets.PYPI_API_TOKEN }} # PYPI_API_TOKEN: ${{ secrets.PYPI_API_TOKEN }}
TEST_PYPI_API_TOKEN: ${{ secrets.TEST_PYPI_API_TOKEN }} # TEST_PYPI_API_TOKEN: ${{ secrets.TEST_PYPI_API_TOKEN }}
determine-docker-package: # determine-docker-package:
# dbt-postgres exists within dbt-core for versions 1.7 and earlier but is a separate package for 1.8 and later. # # dbt-postgres exists within dbt-core for versions 1.7 and earlier but is a separate package for 1.8 and later.
# determine if we need to release dbt-core or both dbt-core and dbt-postgres # # determine if we need to release dbt-core or both dbt-core and dbt-postgres
name: Determine Docker Package # name: Determine Docker Package
if: ${{ !failure() && !cancelled() }} # if: ${{ !failure() && !cancelled() }}
runs-on: ubuntu-latest # runs-on: ubuntu-latest
needs: [pypi-release] # needs: [pypi-release]
outputs: # outputs:
matrix: ${{ steps.determine-docker-package.outputs.matrix }} # matrix: ${{ steps.determine-docker-package.outputs.matrix }}
steps: # steps:
- name: "Audit Version And Parse Into Parts" # - name: "Audit Version And Parse Into Parts"
id: semver # id: semver
uses: dbt-labs/actions/parse-semver@v1.1.0 # uses: dbt-labs/actions/parse-semver@v1.1.0
with: # with:
version: ${{ inputs.version_number }} # version: ${{ inputs.version_number }}
- name: "Determine Packages to Release" # - name: "Determine Packages to Release"
id: determine-docker-package # id: determine-docker-package
run: | # run: |
if [ ${{ steps.semver.outputs.minor }} -ge 8 ]; then # if [ ${{ steps.semver.outputs.minor }} -ge 8 ]; then
json_output={\"package\":[\"dbt-core\"]} # json_output={\"package\":[\"dbt-core\"]}
else # else
json_output={\"package\":[\"dbt-core\",\"dbt-postgres\"]} # json_output={\"package\":[\"dbt-core\",\"dbt-postgres\"]}
fi # fi
echo "matrix=$json_output" >> $GITHUB_OUTPUT # echo "matrix=$json_output" >> $GITHUB_OUTPUT
docker-release: # docker-release:
name: "Docker Release for ${{ matrix.package }}" # name: "Docker Release for ${{ matrix.package }}"
needs: [determine-docker-package] # needs: [determine-docker-package]
# We cannot release to docker on a test run because it uses the tag in GitHub as # # We cannot release to docker on a test run because it uses the tag in GitHub as
# what we need to release but draft releases don't actually tag the commit so it # # what we need to release but draft releases don't actually tag the commit so it
# finds nothing to release # # finds nothing to release
if: ${{ !failure() && !cancelled() && (!inputs.test_run || inputs.only_docker) }} # if: ${{ !failure() && !cancelled() && (!inputs.test_run || inputs.only_docker) }}
strategy: # strategy:
matrix: ${{fromJson(needs.determine-docker-package.outputs.matrix)}} # matrix: ${{fromJson(needs.determine-docker-package.outputs.matrix)}}
permissions: # permissions:
packages: write # packages: write
uses: dbt-labs/dbt-release/.github/workflows/release-docker.yml@main # uses: dbt-labs/dbt-release/.github/workflows/release-docker.yml@main
with: # with:
package: ${{ matrix.package }} # package: ${{ matrix.package }}
version_number: ${{ inputs.version_number }} # version_number: ${{ inputs.version_number }}
test_run: ${{ inputs.test_run }} # test_run: ${{ inputs.test_run }}
slack-notification: # slack-notification:
name: Slack Notification # name: Slack Notification
if: ${{ failure() && (!inputs.test_run || inputs.nightly_release) }} # if: ${{ failure() && (!inputs.test_run || inputs.nightly_release) }}
needs: # needs:
[ # [
bump-version-generate-changelog, # bump-version-generate-changelog,
build-test-package, # build-test-package,
github-release, # github-release,
pypi-release, # pypi-release,
docker-release, # docker-release,
] # ]
uses: dbt-labs/dbt-release/.github/workflows/slack-post-notification.yml@main # uses: dbt-labs/dbt-release/.github/workflows/slack-post-notification.yml@main
with: # with:
status: "failure" # status: "failure"
secrets: # secrets:
SLACK_WEBHOOK_URL: ${{ secrets.SLACK_DEV_CORE_ALERTS }} # SLACK_WEBHOOK_URL: ${{ secrets.SLACK_DEV_CORE_ALERTS }}
testing-slack-notification: # testing-slack-notification:
# sends notifications to #slackbot-test # # sends notifications to #slackbot-test
name: Testing - Slack Notification # name: Testing - Slack Notification
if: ${{ failure() && inputs.test_run && !inputs.nightly_release }} # if: ${{ failure() && inputs.test_run && !inputs.nightly_release }}
needs: # needs:
[ # [
bump-version-generate-changelog, # bump-version-generate-changelog,
build-test-package, # build-test-package,
github-release, # github-release,
pypi-release, # pypi-release,
docker-release, # docker-release,
] # ]
uses: dbt-labs/dbt-release/.github/workflows/slack-post-notification.yml@main # uses: dbt-labs/dbt-release/.github/workflows/slack-post-notification.yml@main
with: # with:
status: "failure" # status: "failure"
secrets: # secrets:
SLACK_WEBHOOK_URL: ${{ secrets.SLACK_TESTING_WEBHOOK_URL }} # SLACK_WEBHOOK_URL: ${{ secrets.SLACK_TESTING_WEBHOOK_URL }}