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

Create tag.yml #71

Merged
merged 1 commit into from
Dec 12, 2024
Merged
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
75 changes: 75 additions & 0 deletions .github/workflows/tag.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,75 @@
# Ultralytics πŸš€ - AGPL-3.0 License https://ultralytics.com/license
# Ultralytics Actions https://github.com/ultralytics/actions
# This workflow automatically publishes a new repository tag and release

name: Tag and Release

on:
workflow_dispatch:
inputs:
tag_name:
description: "Tag name (e.g., v0.0.0)"
required: true
type: string
publish_tag:
description: "Publish new tag"
required: true
type: boolean
default: true
publish_release:
description: "Publish new release"
required: true
type: boolean
default: true

jobs:
tag-and-release:
if: github.repository == 'ultralytics/yolo-ios-app' && github.actor == 'glenn-jocher'
name: Tag and Release
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v4
with:
fetch-depth: 0
token: ${{ secrets._GITHUB_TOKEN }}

- name: Git config
run: |
git config --global user.name "UltralyticsAssistant"
git config --global user.email "web@ultralytics.com"

- name: Check if tag exists
id: check_tag
run: |
if git rev-parse ${{ github.event.inputs.tag_name }} >/dev/null 2>&1; then
echo "Tag ${{ github.event.inputs.tag_name }} already exists"
echo "tag_exists=true" >> $GITHUB_OUTPUT
else
echo "Tag ${{ github.event.inputs.tag_name }} does not exist"
echo "tag_exists=false" >> $GITHUB_OUTPUT
fi

- name: Publish new tag
if: steps.check_tag.outputs.tag_exists == 'false'
run: |
git tag -a "${{ github.event.inputs.tag_name }}" -m "$(git log -1 --pretty=%B)"
git push origin "${{ github.event.inputs.tag_name }}"

- name: Set up Python environment
uses: actions/setup-python@v5
with:
python-version: "3.x"

- name: Install dependencies
run: |
python -m pip install --upgrade pip wheel
pip install ultralytics-actions

- name: Publish new release
env:
OPENAI_API_KEY: ${{ secrets.OPENAI_API_KEY }}
GITHUB_TOKEN: ${{ secrets._GITHUB_TOKEN }}
CURRENT_TAG: ${{ github.event.inputs.tag_name }}
run: ultralytics-actions-summarize-release
shell: bash
Loading