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

Add Github workflow to automate changelog and release pages #486

Merged
merged 3 commits into from
Aug 10, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
21 changes: 21 additions & 0 deletions .github/workflows/configuration.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
{
"categories": [
{
"title": "### User Tools",
"labels": ["user_tools"]
},
{
"title": "### Core",
"labels": ["tools"]
},
{
"title": "### Miscellaneous",
"labels": []
}
],
"sort": {
"order": "DESC",
"on_property": "mergedAt"
},
"pr_template": "- ${{TITLE}} ([#${{NUMBER}}](${{URL}}))"
}
74 changes: 74 additions & 0 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,74 @@
name: Release

on:
workflow_dispatch: # Allow manual triggering
push:
tags:
- 'v*' # Trigger only on tags starting with 'v'

env:
MAVEN_URL: "https://repo1.maven.org/maven2/com/nvidia/rapids-4-spark-tools_2.12"
PYPI_URL: "https://pypi.org/project/spark-rapids-user-tools"

jobs:
build:
runs-on: ubuntu-latest

steps:
- name: Checkout code
uses: actions/checkout@v2

- name: Build Changelog
id: build_changelog
uses: mikepenz/release-changelog-builder-action@v4
with:
configuration: ".github/workflows/configuration.json" # Configuration file for the changelog builder (optional)z
outputFile: "CHANGELOG_BODY.md"
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}

- name: Commit and Push Changelog
if: steps.build_changelog.outputs.changes > 0
run: |
CURRENT_DATE=$(date +'%Y-%m-%d')
BRANCH_URL=https://github.com/$GITHUB_REPOSITORY/tree/${{ github.ref_name }}
echo -e "\n<br/>\n" > CURRENT_CHANGELOG.md
echo "## Release [${{ github.ref_name }}]($BRANCH_URL)" >> CURRENT_CHANGELOG.md
echo "Generated on $CURRENT_DATE" >> CURRENT_CHANGELOG.md
cat CURRENT_CHANGELOG.md CHANGELOG_BODY.md >> TEMP_CHANGELOG.md
cat TEMP_CHANGELOG.md CHANGELOG.md > NEW_CHANGELOG.md

git config user.name "GitHub Actions"
git config user.email "[email protected]"

git fetch origin main
git checkout main
mv NEW_CHANGELOG.md CHANGELOG.md
git add CHANGELOG.md
git commit -m "Update changelogs"
git push origin main

- name: Set Version Number
id: set_version
run: |
VERSION=${{ github.ref_name }}
VERSION=${VERSION#v} # Remove 'v' prefix
echo "VERSION=${VERSION}" >> $GITHUB_ENV

- name: Create Release
id: create_release
uses: actions/create-release@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
tag_name: ${{ github.ref }} # Use the version number from the tag
release_name: ${{ github.ref }} # Use the version number as the release name
body: |
## Packages

- Maven Release: ${{ env.MAVEN_URL }}/${{ env.VERSION }}/
- PyPI Package: ${{ env.PYPI_URL }}/${{ env.VERSION }}/

## Changes
${{ steps.build_changelog.outputs.changelog }}
draft: false
Empty file added CHANGELOG.md
Empty file.
13 changes: 8 additions & 5 deletions user_tools/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,20 +3,20 @@
User tools to help with the adoption, installation, execution, and tuning of RAPIDS Accelerator for Apache Spark.

The wrapper improves end-user experience within the following dimensions:
1. Qualification: Educate the CPU customer on the cost savings and acceleration potential of RAPIDS Accelerator for
1. **Qualification**: Educate the CPU customer on the cost savings and acceleration potential of RAPIDS Accelerator for
Apache Spark. The output shows a list of apps recommended for RAPIDS Accelerator for Apache Spark with estimated savings
and speed-up.
2. Bootstrap: Provide optimized RAPIDS Accelerator for Apache Spark configs based on GPU cluster shape. The output
2. **Bootstrap**: Provide optimized RAPIDS Accelerator for Apache Spark configs based on GPU cluster shape. The output
shows updated Spark config settings on driver node.
3. Tuning: Tune RAPIDS Accelerator for Apache Spark configs based on initial job run leveraging Spark event logs. The output
3. **Tuning**: Tune RAPIDS Accelerator for Apache Spark configs based on initial job run leveraging Spark event logs. The output
shows recommended per-app RAPIDS Accelerator for Apache Spark config settings.
4. Diagnostics: Run diagnostic functions to validate the Dataproc with RAPIDS Accelerator for Apache Spark environment to
4. **Diagnostics**: Run diagnostic functions to validate the Dataproc with RAPIDS Accelerator for Apache Spark environment to
make sure the cluster is healthy and ready for Spark jobs.


## Getting started

set python environment to version [3.8, 3.10]
Set up a Python environment with a version between 3.8 and 3.10

1. Run the project in a virtual environment.
```sh
Expand Down Expand Up @@ -48,3 +48,6 @@ set python environment to version [3.8, 3.10]
Please refer to [spark-rapids-user-tools guide](https://github.com/NVIDIA/spark-rapids-tools/blob/main/user_tools/docs/index.md) for details on how to use the tools
and the platform.

## What's new

Please refer to [CHANGELOG.md](https://github.com/NVIDIA/spark-rapids-tools/blob/main/CHANGELOG.md) for our latest changes.
Loading