Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Finish internal build workflow #945

Merged
merged 12 commits into from
Mar 26, 2024
6 changes: 6 additions & 0 deletions .changes/unreleased/Under the Hood-20240320-190629.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
kind: Under the Hood
body: Finalize the snowflake internal release build workflow
time: 2024-03-20T19:06:29.87556-07:00
custom:
Author: versusfacit
Issue: "38"
58 changes: 23 additions & 35 deletions .github/workflows/release-internal.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,16 @@
name: Release internal patch
# What?
#
# Tag and release an arbitrary sha. Uploads to an internal archive for further processing.
#
# How?
#
# After checking out and testing the provided sha, the image is built and uploaded.
#
# When?
#
# Manual trigger.

name: "Release internal patch"

on:
workflow_dispatch:
Expand All @@ -8,57 +20,33 @@ on:
type: string
required: true
sha:
description: "The sha to use (leave empty to use latest on main)"
type: string
required: false
package_test_command:
description: "Package test command"
type: string
default: "python -c \"import dbt.adapters.snowflake\""
required: true
dbms_name:
description: "The name of the warehouse the adapter connects to."
type: string
default: "snowflake"
required: true
workflow_call:
inputs:
version_number:
description: "The release version number (i.e. 1.0.0b1)"
description: "The ref (sha or branch name) to use"
type: string
default: "main"
required: true
sha:
description: "The sha to use (leave empty to use latest on main)"
type: string
required: false
package_test_command:
description: "Package test command"
type: string
default: "python -c \"import dbt.adapters.snowflake\""
required: true
dbms_name:
description: "The name of the warehouse the adapter connects to."
type: string
default: "snowflake"
required: true

defaults:
run:
shell: bash

env:
PYTHON_TARGET_VERSION: 3.11
PYTHON_TARGET_VERSION: 3.8

jobs:
invoke-reusable-workflow:
name: Build and Release Internally
name: "Build and Release Internally"

uses: VersusFacit/dbt-release/.github/workflows/internal-archive-release.yml@main
uses: "dbt-labs/dbt-release/.github/workflows/internal-archive-release.yml@mp/finish_internal_workflow"

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Going to change this once main has all the changes needed to support all the other workflows. Since this PR's workflow can be invoked using the branch reference, I'll merge at the time I can revert to main (unless there is an alternate path desired)

with:
version_number: ${{ inputs.version_number }}
package_test_command: ${{ inputs.package_test_command }}
dbms_name: ${{ inputs.dbms_name }}
sha: ${{ inputs.sha }}
version_number: "${{ inputs.version_number }}"
package_test_command: "${{ inputs.package_test_command }}"
dbms_name: "snowflake"
sha: "${{ inputs.sha }}"

secrets: inherit
secrets: "inherit"
3 changes: 2 additions & 1 deletion setup.py
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,8 @@ def _get_plugin_version_dict():
_semver = r"""(?P<major>\d+)\.(?P<minor>\d+)\.(?P<patch>\d+)"""
_pre = r"""((?P<prekind>a|b|rc)(?P<pre>\d+))?"""
_nightly = r"""(\.(?P<nightly>[a-z0-9]+)?)?"""
_version_pattern = rf"""version\s*=\s*["']{_semver}{_pre}{_nightly}["']"""
_build = r"""(\+build[0-9]+)?"""
mikealfare marked this conversation as resolved.
Show resolved Hide resolved
_version_pattern = rf"""version\s*=\s*["']{_semver}{_pre}{_nightly}{_build}["']"""
with open(_version_path) as f:
match = re.search(_version_pattern, f.read().strip())
if match is None:
Expand Down
Loading