Skip to content

Commit

Permalink
Add workflow
Browse files Browse the repository at this point in the history
  • Loading branch information
polsala committed Jun 20, 2024
1 parent 514b38e commit 59ff21e
Show file tree
Hide file tree
Showing 3 changed files with 128 additions and 0 deletions.
2 changes: 2 additions & 0 deletions .bumpversion.cfg
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
[bumpversion]
current_version = 1.1.1
80 changes: 80 additions & 0 deletions .github/workflows/bump.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,80 @@
name: BUMP Version
on:
push:
branches: [ master ]

concurrency:
group: ${{ github.workflow }}
cancel-in-progress: false

env:
VERSION_FILE: setup.py
HOME: /home/ci_repos
SCRIPTS_PATH: /home/ci_repos/ci_scripts
USER: ci_repos

permissions:
actions: write
checks: write
contents: write
deployments: write
issues: write
pull-requests: write
statuses: read

jobs:
bump-version:
runs-on: [self-hosted, Keroberos]
if: ${{ !startsWith(github.event.head_commit.message, 'Bump to v') }}
steps:
- uses: actions/checkout@v4
with:
token: ${{ secrets.PUB_MASTER_PUSH_TOKEN }}
- name: Update python packages
run: |
. $SCRIPTS_PATH/load_pyenv.sh
pyenv activate bump
pip install --upgrade bump2version
pip install --upgrade giscemultitools
- name: Get PR info
env:
GITHUB_TOKEN: ${{ secrets.RO_GH_ACTIONS_TOKEN }}
run: |
. $SCRIPTS_PATH/load_pyenv.sh
pyenv activate bump
echo 'PR_INFO<<EOF' >> $GITHUB_ENV
gisce_github get-commits-sha-from-merge-commit --owner ${{ github.repository_owner }} --repository ${{ github.event.repository.name }} --sha ${{ github.sha }} >> $GITHUB_ENV
echo 'EOF' >> $GITHUB_ENV
- name: Bump Version
run: |
. $SCRIPTS_PATH/load_pyenv.sh
pyenv activate bump
pr_labels=$( echo '${{ env.PR_INFO }}' | jq -r '.pullRequest.labels' )
is_minor=false
is_major=false
is_patch=false
for label in echo $( echo $pr_labels | jq -r '.[].name' ); do
if [[ $label == 'minor' ]]; then
is_minor=true
elif [[ $label == 'major' ]]; then
is_major=true
elif [[ $label == 'patch' ]]; then
is_patch=true
fi
done
VERSION_TYPE=false
if [[ $is_major == true ]]; then
VERSION_TYPE="major"
elif [[ $is_minor == true ]]; then
VERSION_TYPE="minor"
elif [[ $is_patch == true ]]; then
VERSION_TYPE="patch"
fi
if [[ $VERSION_TYPE != false ]]; then
git config user.name Release Bot
git config user.email github-actions@github.com
bump2version $VERSION_TYPE --tag --commit -m "Bump to v{new_version}" $VERSION_FILE
git push origin master --tags
fi
46 changes: 46 additions & 0 deletions .github/workflows/upload.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,46 @@
name: Upload package to PYPI

on:
push:
tags:
- 'v[0-9]+\.[0-9]+\.[0-9]+-rc[0-9]+'
- 'v[0-9]+\.[0-9]+\.[0-9]+'

concurrency:
group: ${{ github.workflow }}
cancel-in-progress: false

permissions:
contents: write
discussions: write

jobs:
upload-to-pypi:
runs-on: [self-hosted, Keroberos]
steps:
- uses: actions/checkout@v4

- uses: actions/setup-python@v4
with:
python-version: '3.11'

- name: Get tag
id: tag
uses: dawidd6/action-get-tag@v1
with:
strip_v: false

- name: Creating a realease/pre-release
id: create_release
uses: softprops/action-gh-release@v1
with:
tag_name: ${{steps.tag.outputs.tag}}
draft: false
prerelease: ${{ contains(github.ref, '-rc') }}
generate_release_notes: true

- name: Publish a Python distribution to PyPI
if: ${{ contains(github.ref, '-rc') }} == false
uses: conchylicultor/pypi-build-publish@v1
with:
pypi-token: ${{ secrets.PYPI_MASTER_TOKEN }}

0 comments on commit 59ff21e

Please sign in to comment.