name: Update_CalVer on: push: branches: - 'main' paths: - 'subgen.py' - 'launcher.py' workflow_dispatch: jobs: docker: runs-on: ubuntu-latest steps: - name: Checkout code uses: actions/checkout@v2 with: fetch-depth: 0 - name: Generate Monthly Commit Count id: commit_count run: | # Get the current year and month YEAR=$(date +%Y) MONTH=$(date +%m) # Count commits from the start of the current month COMMIT_COUNT=$(git rev-list --count HEAD --since="$YEAR-$MONTH-01") echo "commit_count=$COMMIT_COUNT" >> $GITHUB_ENV - name: Set Calver Version id: setcalver run: | # Combine year, month, and commit count for the version VERSION=$(date +%Y.%m).${{ env.commit_count }} echo "package_version=$VERSION" >> $GITHUB_ENV - name: Update version file run: | sed -i "s/subgen_version =.*/subgen_version = '${{ env.package_version }}'/" subgen.py - name: Amend commit with version update env: GIT_AUTHOR_NAME: "McCloudS" GIT_AUTHOR_EMAIL: "scott@mccloud.dev" run: | git config user.name "${GIT_AUTHOR_NAME}" git config user.email "${GIT_AUTHOR_EMAIL}" # Stage the modified file git add subgen.py # Amend the most recent commit, reusing the previous commit message git commit --amend --reuse-message=HEAD --author="${GIT_AUTHOR_NAME} <${GIT_AUTHOR_EMAIL}>" # Push the amended commit git push --force