Skip to content

Commit

Permalink
Added driver release action (#389)
Browse files Browse the repository at this point in the history
* added driver release action

* Release automation

Signed-off-by: meghana_gm <[email protected]>

* Release automation

Signed-off-by: meghana_gm <[email protected]>

* fix dispatch type and linting

---------

Signed-off-by: meghana_gm <[email protected]>
Co-authored-by: meghana_gm <[email protected]>
Co-authored-by: root <[email protected]>
  • Loading branch information
3 people authored Dec 30, 2024
1 parent 1675c61 commit 5a9ba1b
Show file tree
Hide file tree
Showing 3 changed files with 69 additions and 1 deletion.
46 changes: 46 additions & 0 deletions .github/workflows/auto-release.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,46 @@
name: Auto Release CSM
on: # yamllint disable-line rule:truthy
workflow_dispatch:
repository_dispatch:
types: [auto-release-workflow]

jobs:
calculate-version:
runs-on: ubuntu-latest
outputs:
new-version: ${{ steps.set-version.outputs.version }}
steps:
- name: Check out repository
uses: actions/checkout@v3
with:
fetch-depth: 0 # Fetch the full history including tags

- name: Get latest release version
id: get-latest-version
run: |
latest_version=$(git describe --tags $(git rev-list --tags --max-count=1))
echo "latest_version=${latest_version}" >> $GITHUB_ENV
- name: Increment minor version and remove 'v' prefix
id: set-version
run: |
version=${{ env.latest_version }}
clean_version=${version#v}
# Parse version parts
major=$(echo $clean_version | cut -d'.' -f1)
minor=$(echo $clean_version | cut -d'.' -f2)
patch=$(echo $clean_version | cut -d'.' -f3)
new_minor=$((minor + 1))
new_version="${major}.${new_minor}.0"
echo "New version: $new_version"
echo "::set-output name=version::$new_version"
csm-release:
needs: calculate-version
uses: dell/common-github-actions/.github/workflows/csm-release-driver-module.yaml@main
with:
version: ${{ inputs.version || needs.calculate-version.outputs.new-version }}
image: "csi-powermax"
secrets: inherit
2 changes: 1 addition & 1 deletion .github/workflows/go-version.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@
# Reusable workflow to perform go version update on Golang based projects
name: Go Version Update

on:
on: # yamllint disable-line rule:truthy
workflow_dispatch:
repository_dispatch:
types: [go-update-workflow]
Expand Down
22 changes: 22 additions & 0 deletions .github/workflows/release.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
name: Release CSI-Powermax
# Invocable as a reusable workflow
# Can be manually triggered
on: # yamllint disable-line rule:truthy
workflow_call:
workflow_dispatch:
inputs:
version:
description: 'Version to release (major, minor, patch), Example: 1.x.x'
required: true
image:
description: 'Image name. Example: csi-powermax'
default: 'csi-powermax'
required: true
jobs:
csm-release:
uses: dell/common-github-actions/.github/workflows/csm-release-driver-module.yaml@main
name: Release CSM Drivers and Modules
with:
version: ${{ github.event.inputs.version }}
image: ${{ github.event.inputs.image }}
secrets: inherit

0 comments on commit 5a9ba1b

Please sign in to comment.