New parser for xamarin and python. Reworked workflow with composite actions (#41)

This commit is contained in:
Maksim Shilov
2021-10-27 10:31:19 +03:00
committed by GitHub
parent 6f1aa3ce73
commit a753279554
5 changed files with 178 additions and 74 deletions

View File

@@ -0,0 +1,82 @@
name: Get tools new versions
on:
schedule:
- cron: '0 8 * * THU'
workflow_dispatch:
defaults:
run:
shell: pwsh
jobs:
find-new-xamarin-versions:
name: Searching for new Xamarin versions
runs-on: ubuntu-latest
outputs:
versions-output: ${{ steps.get-new-xamarin-versions.outputs.versions-output }}
steps:
- uses: actions/checkout@v2
- id: get-new-xamarin-versions
name: Get new Xamarin versions
run: echo "::set-output name=versions-output::$(./get-new-tool-versions/verify-new-tool-version-added-to-image.ps1 -ToolName Xamarin)"
check-new-xamarin-versions:
name: Verifying new Xamarin versions exist
runs-on: ubuntu-latest
needs: find-new-xamarin-versions
steps:
- uses: actions/checkout@v2
- name: Check Versions
if: needs.find-new-xamarin-versions.outputs.versions-output == ''
run: Write-Host "No new versions found"
- uses: ./.github/actions/send-slack-notification
if: needs.find-new-xamarin-versions.outputs.versions-output != ''
with:
url: ${{ secrets.SLACK_CHANNEL_URL }}
tool-name: 'Xamarin'
tool-version: ${{ needs.find-new-xamarin-versions.outputs.versions-output }}
image-url: 'https://avatars.githubusercontent.com/u/790012?s=200&v=4'
add-to-toolset-flag: '-AddToToolsetFlag'
find-new-python-versions:
name: Searching for new Python versions
runs-on: ubuntu-latest
outputs:
versions-output: ${{ steps.get-new-python-versions.outputs.versions-output }}
steps:
- uses: actions/checkout@v2
- id: get-new-python-versions
name: Get new Python versions
run: echo "::set-output name=versions-output::$(./get-new-tool-versions/verify-new-tool-version-added-to-image.ps1 -ToolName Python)"
check-new-python-versions:
name: Verifying new Python versions exist
runs-on: ubuntu-latest
needs: find-new-python-versions
steps:
- uses: actions/checkout@v2
- name: Check Versions
if: needs.find-new-python-versions.outputs.versions-output == ''
run: Write-Host "No new versions found"
- uses: ./.github/actions/send-slack-notification
if: needs.find-new-python-versions.outputs.versions-output != ''
with:
url: ${{ secrets.SLACK_CHANNEL_URL }}
tool-name: 'Python'
tool-version: ${{ needs.find-new-python-versions.outputs.versions-output }}
image-url: 'https://www.python.org/static/community_logos/python-powered-h-100x130.png'
add-to-toolset-flag: '-AddToToolsetFlag'
check_build:
name: Check build for failures
runs-on: ubuntu-latest
needs: [check-new-xamarin-versions, check-new-python-versions]
if: failure()
steps:
- uses: actions/checkout@v2
- uses: ./.github/actions/send-slack-notification
with:
url: ${{ secrets.SLACK_CHANNEL_URL }}
tool-name: 'Python or Xamarin'
pipeline-url: '$env:GITHUB_SERVER_URL/$env:GITHUB_REPOSITORY/actions/runs/$env:GITHUB_RUN_ID'
text: "The build of the Xamarin or Python detection pipeline has failed stages:"