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

[Automation] Add github actions for releasing #2416

Draft
wants to merge 3 commits into
base: master
Choose a base branch
from
Draft
Show file tree
Hide file tree
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
29 changes: 29 additions & 0 deletions .github/workflows/auto_on_rel_published.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
name: Auto on rel published

on:
release:
types: [published]

jobs:
trigger_aas_release:
runs-on: windows-latest
env:
GITHUB_TOKEN: "${{ secrets.GITHUB_TOKEN }}"

steps:
- name: Checkout
uses: actions/checkout@v2

- uses: actions/setup-dotnet@v1
with:
dotnet-version: '7.0.101'

- name: "Get version following release"
id: versions
run: ./tracer/build.sh OutputCurrentVersionToGitHub

- name: "Close previous milestone"
run: .\tracer\build.ps1 CloseMilestone
env:
Version: ${{steps.versions.outputs.version}}

54 changes: 54 additions & 0 deletions .github/workflows/auto_version_bump_merged.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,54 @@
name: "On Version Bump Merged"
on:
pull_request:
types:
- closed

jobs:
if_merged:
if: github.event.pull_request.merged == true && startsWith(github.event.pull_request.title, '[Version Bump]') == true
runs-on: ubuntu-latest
steps:
# Create release branch
- name: Checkout
uses: actions/checkout@v2
with:
fetch-depth: 0

- uses: actions/setup-dotnet@v1
with:
dotnet-version: '7.0.101'

- name: "Configure Git Credentials"
run: |
git config user.name "${{ github.actor }}"
git config user.email "${{ github.actor }}@users.noreply.github.com"

- name: "Get current version"
id: versions
run: ./github-actions-helpers/build.sh OutputCurrentVersionToGitHub

# Create release branch
- name: "Push ddtrace branch"
run: |
git checkout -b ddtrace-${{ steps.versions.outputs.version }}
git add .
git commit -m "New release ${{steps.versions.outputs.version}}"
git push origin -u ddtrace-${{ steps.versions.outputs.version }}

- name: "Generate release notes"
id: release_notes
run: ./github-actions-helpers/build.sh GenerateReleaseNotes
env:
PIPELINE_ARTIFACTS_LINK: ${{steps.assets.outputs.artifacts_link}}

- name: Create Release
uses: softprops/action-gh-release@v1
with:
draft: true
name: "${{steps.versions.outputs.full_version}}"
tag_name: "${{steps.versions.outputs.full_version}}"
prerelease: ${{steps.versions.outputs.isprerelease}}
body: ${{steps.release_notes.outputs.release_notes}}
target_commitish: "ddtrace-${{steps.versions.outputs.full_version}}"
fail_on_unmatched_files: true
68 changes: 68 additions & 0 deletions .github/workflows/create_version_bump_pr.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,68 @@
name: Version bump for next minor release

on:
workflow_dispatch:

jobs:
bump_version:

runs-on: windows-latest
env:
GITHUB_TOKEN: "${{ secrets.GITHUB_TOKEN }}"

steps:
- name: Support longpaths
run: git config --system core.longpaths true
echo "::set-output name=ref::master"

- name: Checkout
uses: actions/checkout@v2

- name: "Configure Git Credentials"
run: |
git config user.name "${{ github.actor }}"
git config user.email "${{ github.actor }}@users.noreply.github.com"

- uses: actions/setup-dotnet@v1
with:
dotnet-version: '7.0.101'

- name: "CalculateNextVersion"
run: .\github-actions-helpers\build.ps1 CalculateNextVersion
id: versions

- name: "Bump Version"
run: .\github-actions-helpers\build.ps1 UpdateVersion
env:
NewVersion: ${{ steps.versions.outputs.version }}
NewIsPrerelease: ${{ steps.versions.outputs.isprerelease }}

- name: "Generate release notes"
id: release_notes
run: .\github-actions-helpers\build.ps1 GenerateReleaseNotes

- name: "Update Changelog"
run: .\github-actions-helpers\build.ps1 UpdateChangeLog
env:
RELEASE_NOTES: ${{steps.release_notes.outputs.release_notes}}

- name: "Verify Changes"
id: changes
run: .\github-actions-helpers\build.ps1 VerifyChangedFilesFromVersionBump

- name: Create Pull Request
id: pr
uses: peter-evans/[email protected]
with:
token: ${{ secrets.GITHUB_TOKEN }}
branch: "version-bump-${{steps.versions.outputs.full_version}}"
commit-message: "[Version Bump] ${{steps.versions.outputs.full_version}}"
delete-branch: true
title: "[Version Bump] ${{steps.versions.outputs.full_version}}"
reviewers: "DataDog/apm-php"
body: "${{steps.changes.outputs.release_notes}}"

- name: Display output
run: |
echo "Pull Request Number - ${{ steps.pr.outputs.pull-request-number }}"
echo "Pull Request URL - ${{ steps.pr.outputs.pull-request-url }}"
Loading