diff --git a/.github/workflows/auto-tag.yml b/.github/workflows/auto-tag.yml new file mode 100644 index 000000000..3aae4ec7d --- /dev/null +++ b/.github/workflows/auto-tag.yml @@ -0,0 +1,30 @@ +name: Monthly Tagging +on: + schedule: + # Run every month on the 1st day at 08:15 AM. + - cron: '15 8 * 1 *' + +jobs: + create-monthly-tag: + runs-on: ubuntu-latest + steps: + - name: Checkout repository + uses: actions/checkout@v4 + + - name: Configure Git + run: | + git config user.name "${GITHUB_ACTOR}" + git config user.email "${GITHUB_ACTOR}@users.noreply.github.com" + + - name: Get current year and week number + id: date + run: | + echo "tag_name=v0.0.$(date +%G%V)" >> "$GITHUB_OUTPUT" + + - name: Create and push tag + run: | + TAG_NAME="${{ steps.date.outputs.tag_name }}" + # Create an annotated tag on the latest commit of the current branch (main) + git tag -a $TAG_NAME -m "$TAG_NAME" + # Push the newly created tag to the remote repository + git push origin $TAG_NAME diff --git a/VERSIONING.md b/VERSIONING.md new file mode 100644 index 000000000..633474854 --- /dev/null +++ b/VERSIONING.md @@ -0,0 +1,22 @@ +# Versioning Policy +This document outlines the versioning strategy for the OpenTelemetry eBPF Profiler project. + +# Development Status +This project is currently under active development. As such, users should be aware that significant changes, including breaking API modifications, may occur at any time. + +# Automatic Version Tagging +Automatic version tags are generated on a monthly basis to reflect ongoing development progress. + +# Versioning Scheme +This project adheres to [Semantic Versioning 2](https://semver.org/spec/v2.0.0.html). + +Major Version Zero (0.y.z): While the project is in its initial development phase, the major version will remain 0. Anything MAY change at any time. The public API SHOULD NOT be considered stable. Users are advised to exercise caution and expect potential breaking changes without prior notice during this phase. + +# Automatic Tag Format +The format for automatically generated tags currently follows v0.0.x, where x represents the year followed by the week number. + +## Example: + +- `v0.0.202501` would indicate the first week of 2025. + +- `v0.0.202515` would indicate the fifteenth week of 2025.