Skip to content

config.h edited final ver and new release added #8

config.h edited final ver and new release added

config.h edited final ver and new release added #8

name: Release DWM Binary
on:
push:
branches:
- main
paths:
- config.h
jobs:
release:
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v2
- name: Install dependencies
run: |
sudo apt-get update && sudo apt-get upgrade -y
sudo apt-get install -y build-essential git libx11-dev libx11-xcb-dev libxcb-res0-dev libxinerama-dev libxft-dev libimlib2-dev
- name: Install GitHub CLI
run: |
sudo apt-get install -y gh
- name: Authenticate GitHub CLI
run: |
echo "${{ secrets.DWM_TOKEN }}" | gh auth login --with-token
- name: Build and Release
run: |
make clean
make release
- name: Create release
id: create_release
run: |
version=$(date +'%Y.%m.%d')
# Get the changelog for the last 20 commits
changelog=$(git log --oneline --pretty=format:"* %s (%h)" | head -n 20)
echo "Changelog: $changelog" > release/changelog.txt
# Get the last release tag
last_release=$(git describe --tags --abbrev=0)
# Get merged PR details since the last release
pr_details=$(git log ${last_release}..HEAD --merges --pretty=format:"* %s by %an (%h)" | grep -i 'merge pull request')
# Append Merged Pull Requests to the changelog
echo "Merged Pull Requests since $last_release:" >> release/changelog.txt
echo "$pr_details" >> release/changelog.txt
# Get unique contributor names since the last release
contributors=$(git log ${last_release}..HEAD --pretty=format:"%an" | sort -u | awk '{print "* " $0}')
# Append Contributors to the changelog
echo -e "\n**Contributors:**" >> release/changelog.txt
echo "$contributors" >> release/changelog.txt
# Create the GitHub release
gh release create "v${version}.$(git rev-list --count HEAD)" release/dwm-${version}.tar.gz release/changelog.txt --title "Release v${version}.$(git rev-list --count HEAD)" --notes "$(cat release/changelog.txt)"
- name: Clean up
run: |
rm -f release/dwm-${version}.tar.gz # Optional: clean up the tarball if needed