mirror of
https://github.com/galaxyproject/galaxy.git
synced 2026-09-24 16:30:27 +08:00
Merge remote-tracking branch 'upstream/release_25.1' into merge_25.1_into_dev_dec_2
This commit is contained in:
@@ -1,83 +0,0 @@
|
||||
# Release Drafter Configuration for Galaxy
|
||||
# Implements YY.N.P versioning scheme using existing Galaxy labels
|
||||
#
|
||||
# IMPORTANT: Galaxy's versioning scheme is YY.N.P where:
|
||||
# - YY = Two-digit year (25 for 2025)
|
||||
# - N = Feature release number (0, 1, 2... - typically 2-3 per year)
|
||||
# - P = Patch/point release number (0, 1, 2, 3...)
|
||||
#
|
||||
# Year transitions (24→25) must be handled manually when creating releases.
|
||||
|
||||
name-template: 'Galaxy $RESOLVED_VERSION'
|
||||
tag-template: 'v$RESOLVED_VERSION'
|
||||
|
||||
# Categories for organizing release notes using existing Galaxy labels
|
||||
categories:
|
||||
- title: '🎉 Major Changes'
|
||||
labels:
|
||||
- 'major'
|
||||
- 'highlight'
|
||||
- title: '🚀 New Features'
|
||||
labels:
|
||||
- 'kind/feature'
|
||||
- title: '🔧 Enhancements'
|
||||
labels:
|
||||
- 'kind/enhancement'
|
||||
- title: '🐛 Bug Fixes'
|
||||
labels:
|
||||
- 'kind/bug'
|
||||
- title: '🔒 Security Updates'
|
||||
labels:
|
||||
- 'area/security'
|
||||
- title: '⚡ Performance'
|
||||
labels:
|
||||
- 'area/performance'
|
||||
- title: '🧰 Refactoring'
|
||||
labels:
|
||||
- 'kind/refactoring'
|
||||
- title: '📚 Documentation'
|
||||
labels:
|
||||
- 'area/documentation'
|
||||
- title: '🔧 Admin & Configuration'
|
||||
labels:
|
||||
- 'area/admin'
|
||||
- 'area/configuration'
|
||||
- title: '🛠️ API Changes'
|
||||
labels:
|
||||
- 'area/API'
|
||||
- title: '🧪 Testing'
|
||||
labels:
|
||||
- 'area/testing'
|
||||
- 'area/testing/api'
|
||||
- 'area/testing/integration'
|
||||
- 'area/testing/selenium'
|
||||
- title: '🏗️ Infrastructure & Dependencies'
|
||||
labels:
|
||||
- 'area/dependencies'
|
||||
- 'area/client-build'
|
||||
|
||||
# Exclude certain labels from release notes
|
||||
exclude-labels:
|
||||
- 'triage'
|
||||
- 'procedures'
|
||||
- 'planning'
|
||||
- 'merge'
|
||||
- 'status/needs feedback'
|
||||
- 'status/planning'
|
||||
|
||||
# Template for each change line
|
||||
change-template: '- $TITLE @$AUTHOR (#$NUMBER)'
|
||||
|
||||
# Characters to escape in titles
|
||||
change-title-escapes: '\<*_&'
|
||||
|
||||
# Version is read from lib/galaxy/version.py by the workflow
|
||||
# No version-resolver needed since Galaxy manages versions manually
|
||||
|
||||
# Template for the release body
|
||||
template: |
|
||||
## Changes in $RESOLVED_VERSION
|
||||
|
||||
$CHANGES
|
||||
|
||||
**Full Changelog**: https://github.com/$OWNER/$REPOSITORY/compare/$PREVIOUS_TAG...v$RESOLVED_VERSION
|
||||
@@ -0,0 +1,63 @@
|
||||
changelog:
|
||||
exclude:
|
||||
labels:
|
||||
- merge
|
||||
- procedures
|
||||
- planning
|
||||
- status/needs feedback
|
||||
- status/planning
|
||||
authors:
|
||||
- dependabot[bot]
|
||||
- github-actions[bot]
|
||||
- galaxybot
|
||||
categories:
|
||||
- title: 🎉 Major Changes
|
||||
labels:
|
||||
- highlight
|
||||
- highlight/admin
|
||||
- highlight/dev
|
||||
- highlight/power-user
|
||||
- title: 🚀 New Features
|
||||
labels:
|
||||
- kind/feature
|
||||
exclude:
|
||||
labels:
|
||||
- area/documentation
|
||||
- title: 🔧 Enhancements
|
||||
labels:
|
||||
- kind/enhancement
|
||||
- title: 🐛 Bug Fixes
|
||||
labels:
|
||||
- kind/bug
|
||||
- title: '🔒 Security Updates'
|
||||
labels:
|
||||
- 'area/security'
|
||||
- title: '⚡ Performance'
|
||||
labels:
|
||||
- 'area/performance'
|
||||
- title: '🧰 Refactoring'
|
||||
labels:
|
||||
- 'kind/refactoring'
|
||||
- title: '📚 Documentation'
|
||||
labels:
|
||||
- 'area/documentation'
|
||||
- title: '🔧 Admin & Configuration'
|
||||
labels:
|
||||
- 'area/admin'
|
||||
- 'area/configuration'
|
||||
- title: '🛠️ API Changes'
|
||||
labels:
|
||||
- 'area/API'
|
||||
- title: '🧪 Testing'
|
||||
labels:
|
||||
- 'area/testing'
|
||||
- 'area/testing/api'
|
||||
- 'area/testing/integration'
|
||||
- 'area/testing/selenium'
|
||||
- title: '🏗️ Infrastructure & Dependencies'
|
||||
labels:
|
||||
- 'area/dependencies'
|
||||
- 'area/client-build'
|
||||
- title: Other Changes
|
||||
labels:
|
||||
- "*"
|
||||
@@ -1,72 +0,0 @@
|
||||
name: Release Drafter
|
||||
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- dev
|
||||
- master
|
||||
- 'release_*'
|
||||
pull_request_target:
|
||||
types: [opened, reopened, synchronize]
|
||||
workflow_dispatch:
|
||||
|
||||
permissions:
|
||||
contents: read
|
||||
|
||||
jobs:
|
||||
update_release_draft:
|
||||
permissions:
|
||||
contents: write
|
||||
pull-requests: write
|
||||
if: github.repository == 'galaxyproject/galaxy'
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v6
|
||||
with:
|
||||
sparse-checkout: |
|
||||
lib/galaxy/version.py
|
||||
|
||||
- name: Read Galaxy version
|
||||
id: galaxy-version
|
||||
run: |
|
||||
# Extract VERSION_MAJOR from version.py (e.g., "25.1")
|
||||
VERSION_MAJOR=$(grep '^VERSION_MAJOR' lib/galaxy/version.py | cut -d'"' -f2)
|
||||
RELEASE_VERSION="${VERSION_MAJOR}.0"
|
||||
echo "version=${RELEASE_VERSION}" >> $GITHUB_OUTPUT
|
||||
echo "Galaxy release version: ${RELEASE_VERSION}"
|
||||
|
||||
- name: Check if we should update draft
|
||||
id: check-draft
|
||||
run: |
|
||||
VERSION="${{ inputs.version || steps.galaxy-version.outputs.version }}"
|
||||
|
||||
# Check if this version is already published
|
||||
PUBLISHED=$(gh release view "v${VERSION}" --json isDraft --jq '.isDraft' 2>/dev/null || echo "not_found")
|
||||
|
||||
if [ "$PUBLISHED" = "false" ]; then
|
||||
echo "Published release v${VERSION} already exists. Skipping."
|
||||
echo "skip=true" >> $GITHUB_OUTPUT
|
||||
exit 0
|
||||
fi
|
||||
|
||||
# Check if a draft exists for a DIFFERENT version (only one draft at a time)
|
||||
EXISTING_DRAFT=$(gh release list --limit 50 --json tagName,isDraft --jq '.[] | select(.isDraft == true) | .tagName' | head -1)
|
||||
|
||||
if [ -n "$EXISTING_DRAFT" ] && [ "$EXISTING_DRAFT" != "v${VERSION}" ]; then
|
||||
echo "Draft release $EXISTING_DRAFT already exists (for different version). Skipping v${VERSION}."
|
||||
echo "Only one draft release at a time is supported."
|
||||
echo "skip=true" >> $GITHUB_OUTPUT
|
||||
else
|
||||
echo "Proceeding with draft for v${VERSION}."
|
||||
echo "skip=false" >> $GITHUB_OUTPUT
|
||||
fi
|
||||
env:
|
||||
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
|
||||
- uses: release-drafter/release-drafter@v6
|
||||
if: steps.check-draft.outputs.skip == 'false'
|
||||
with:
|
||||
config-name: release-drafter.yml
|
||||
version: ${{ steps.galaxy-version.outputs.version }}
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
Reference in New Issue
Block a user