-
Notifications
You must be signed in to change notification settings - Fork 2
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
chore:semver_automations #46
Changes from all commits
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,10 @@ | ||
# auto add labels to PRs | ||
on: | ||
pull_request_target: | ||
types: [ opened, edited ] | ||
name: conventional-release-labels | ||
jobs: | ||
label: | ||
runs-on: ubuntu-latest | ||
steps: | ||
- uses: bcoe/conventional-release-labels@v1 |
This file was deleted.
This file was deleted.
This file was deleted.
This file was deleted.
Original file line number | Diff line number | Diff line change | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
@@ -0,0 +1,58 @@ | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
name: Stable Release | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
on: | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
push: | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
branches: [master] | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
workflow_dispatch: | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
jobs: | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
publish_stable: | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
uses: TigreGotico/gh-automations/.github/workflows/publish-stable.yml@master | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
secrets: inherit | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
with: | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
branch: 'master' | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
version_file: 'ovos_gui/version.py' | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
setup_py: 'setup.py' | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
publish_release: true | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
publish_pypi: | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
needs: publish_stable | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
if: success() # Ensure this job only runs if the previous job succeeds | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
runs-on: ubuntu-latest | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
steps: | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
- uses: actions/checkout@v2 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
with: | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
ref: dev | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
fetch-depth: 0 # otherwise, there would be errors pushing refs to the destination repository. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
- name: Setup Python | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
uses: actions/setup-python@v1 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
with: | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
python-version: 3.8 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
- name: Install Build Tools | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
run: | | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
python -m pip install build wheel | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
- name: version | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
run: echo "::set-output name=version::$(python setup.py --version)" | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
id: version | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
- name: Build Distribution Packages | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
run: | | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
python setup.py sdist bdist_wheel | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
- name: Publish to PyPI | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
uses: pypa/gh-action-pypi-publish@master | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
with: | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
password: ${{secrets.PYPI_TOKEN}} | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
sync_dev: | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
needs: publish_stable | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
if: success() # Ensure this job only runs if the previous job succeeds | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
runs-on: ubuntu-latest | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
steps: | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
- uses: actions/checkout@v2 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
with: | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
fetch-depth: 0 # otherwise, there would be errors pushing refs to the destination repository. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
ref: master | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
- name: Push master -> dev | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
uses: ad-m/github-push-action@master | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
with: | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
github_token: ${{ secrets.GITHUB_TOKEN }} | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
branch: dev | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Comment on lines
+45
to
+58
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Update GitHub Actions for branch synchronization. Update the - uses: actions/checkout@v2
+ uses: actions/checkout@v3 Also, verify that the Committable suggestion
Suggested change
Toolsactionlint
|
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,108 @@ | ||
name: Release Alpha and Propose Stable | ||
|
||
on: | ||
pull_request: | ||
types: [closed] | ||
branches: [dev] | ||
|
||
jobs: | ||
publish_alpha: | ||
if: github.event.pull_request.merged == true | ||
uses: TigreGotico/gh-automations/.github/workflows/publish-alpha.yml@master | ||
secrets: inherit | ||
with: | ||
branch: 'dev' | ||
version_file: 'ovos_gui/version.py' | ||
setup_py: 'setup.py' | ||
update_changelog: true | ||
publish_prerelease: true | ||
changelog_max_issues: 100 | ||
|
||
notify: | ||
if: github.event.pull_request.merged == true | ||
needs: publish_alpha | ||
runs-on: ubuntu-latest | ||
steps: | ||
- uses: actions/checkout@v2 | ||
- name: Send message to Matrix bots channel | ||
id: matrix-chat-message | ||
uses: fadenb/[email protected] | ||
with: | ||
homeserver: 'matrix.org' | ||
token: ${{ secrets.MATRIX_TOKEN }} | ||
channel: '!WjxEKjjINpyBRPFgxl:krbel.duckdns.org' | ||
message: | | ||
new ${{ github.event.repository.name }} PR merged! https://github.com/${{ github.repository }}/pull/${{ github.event.number }} | ||
|
||
publish_pypi: | ||
needs: publish_alpha | ||
if: success() # Ensure this job only runs if the previous job succeeds | ||
runs-on: ubuntu-latest | ||
steps: | ||
- uses: actions/checkout@v2 | ||
with: | ||
ref: dev | ||
fetch-depth: 0 # otherwise, there would be errors pushing refs to the destination repository. | ||
- name: Setup Python | ||
uses: actions/setup-python@v1 | ||
with: | ||
python-version: 3.8 | ||
- name: Install Build Tools | ||
run: | | ||
python -m pip install build wheel | ||
- name: version | ||
run: echo "::set-output name=version::$(python setup.py --version)" | ||
id: version | ||
- name: Build Distribution Packages | ||
run: | | ||
python setup.py sdist bdist_wheel | ||
- name: Publish to PyPI | ||
uses: pypa/gh-action-pypi-publish@master | ||
with: | ||
password: ${{secrets.PYPI_TOKEN}} | ||
|
||
|
||
propose_release: | ||
needs: publish_alpha | ||
if: success() # Ensure this job only runs if the previous job succeeds | ||
runs-on: ubuntu-latest | ||
steps: | ||
- name: Checkout dev branch | ||
uses: actions/checkout@v3 | ||
with: | ||
ref: dev | ||
|
||
- name: Setup Python | ||
uses: actions/setup-python@v2 | ||
with: | ||
python-version: '3.10' | ||
|
||
- name: Get version from setup.py | ||
id: get_version | ||
run: | | ||
VERSION=$(python setup.py --version) | ||
echo "VERSION=$VERSION" >> $GITHUB_ENV | ||
|
||
- name: Create and push new branch | ||
run: | | ||
git checkout -b release-${{ env.VERSION }} | ||
git push origin release-${{ env.VERSION }} | ||
|
||
- name: Open Pull Request from dev to master | ||
env: | ||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | ||
run: | | ||
# Variables | ||
BRANCH_NAME="release-${{ env.VERSION }}" | ||
BASE_BRANCH="master" | ||
HEAD_BRANCH="release-${{ env.VERSION }}" | ||
PR_TITLE="Release ${{ env.VERSION }}" | ||
PR_BODY="Human review requested!" | ||
|
||
# Create a PR using GitHub API | ||
curl -X POST \ | ||
-H "Accept: application/vnd.github+json" \ | ||
-H "Authorization: token $GITHUB_TOKEN" \ | ||
-d "{\"title\":\"$PR_TITLE\",\"body\":\"$PR_BODY\",\"head\":\"$HEAD_BRANCH\",\"base\":\"$BASE_BRANCH\"}" \ | ||
https://api.github.com/repos/${{ github.repository }}/pulls | ||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Update GitHub Actions and ensure secure PyPI token handling.
Update the following actions to their latest versions to avoid deprecation issues and potential security vulnerabilities:
actions/checkout@v2
toactions/checkout@v3
actions/setup-python@v1
toactions/setup-python@v3
Also, ensure that the PyPI token is handled securely and consider using environment secrets if not already done.
Tools
actionlint