Update ci.yml

pull/619/head
A. R. Shajii 2025-01-29 11:07:27 -05:00
parent 1072e63576
commit 82558f9242
1 changed files with 28 additions and 79 deletions

View File

@ -12,37 +12,18 @@ on:
- develop
jobs:
release:
create_release:
name: Create GitHub Release
runs-on: ubuntu-latest
outputs:
upload_url: ${{ steps.create_release.outputs.upload_url }}
permissions:
contents: write
steps:
- name: Check
if: contains(github.ref, 'tags/v')
id: check
run: echo "::set-output name=MAKE_RELEASE::true"
- name: Create Release
if: contains(github.ref, 'tags/v')
id: create_release
if: steps.check.outputs.MAKE_RELEASE
uses: actions/create-release@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
tag_name: ${{ github.ref }}
release_name: ${{ github.ref }}
draft: false
prerelease: false
- name: Output Release URL File
if: steps.check.outputs.MAKE_RELEASE
run: echo "${{ steps.create_release.outputs.upload_url }}" > release_url.txt
- name: Save Release URL File for Publish
if: steps.check.outputs.MAKE_RELEASE
uses: actions/upload-artifact@v4
with:
name: release_url
path: release_url.txt
uses: ncipollo/release-action@v1
manylinux:
strategy:
@ -52,7 +33,9 @@ jobs:
# - aarch64
runs-on: ${{ matrix.arch == 'aarch64' && 'ubuntu-arm-latest' || 'ubuntu-latest' }}
name: Codon CI (manylinux)
needs: [ release ]
needs: create_release
permissions:
contents: write
steps:
- uses: actions/checkout@v4
@ -71,39 +54,22 @@ jobs:
if: matrix.arch == 'aarch64'
uses: ./.github/actions/build-manylinux-aarch64
- name: Load Release URL File
if: contains(github.ref, 'tags/v')
uses: actions/download-artifact@v4
with:
name: release_url
- name: Get Release URL
id: get_release_url
if: contains(github.ref, 'tags/v')
run: |
echo ::set-output name=file_name::${REPOSITORY_NAME##*/}-${TAG_REF_NAME##*/v} # RepositoryName-v1.0.0
value=`cat release_url/release_url.txt`
echo ::set-output name=upload_url::$value
env:
TAG_REF_NAME: ${{ github.ref }}
REPOSITORY_NAME: ${{ github.repository }}
- name: Upload Release Asset
if: contains(github.ref, 'tags/v')
uses: actions/upload-release-asset@v1.0.2
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
upload_url: ${{ steps.get_release_url.outputs.upload_url }}
asset_path: ./codon-linux-${{ matrix.arch }}.tar.gz
asset_name: codon-linux-${{ matrix.arch }}.tar.gz
upload_url: ${{ needs.create_release.outputs.upload_url }}
asset_path: ./codon-linux-x86_64.tar.gz
asset_name: codon-linux-x86_64.tar.gz
asset_content_type: application/gzip
- name: Upload Artifacts
uses: actions/upload-artifact@v4
with:
name: manylinux-${{ matrix.arch }}
path: codon-linux-${{ matrix.arch }}.tar.gz
name: manylinux-x86_64
path: codon-linux-x86_64.tar.gz
main:
strategy:
@ -114,7 +80,10 @@ jobs:
# - ubuntu-arm-latest
runs-on: ${{ matrix.os }}
name: Codon CI
needs: [ release ]
needs: create_release
permissions:
contents: write
id-token: write
steps:
- uses: actions/checkout@v4
- uses: actions/setup-python@v5
@ -222,51 +191,31 @@ jobs:
tar -czf ${CODON_BUILD_ARCHIVE} codon-deploy
du -sh codon-deploy
- name: Load Release URL File
if: contains(github.ref, 'tags/v')
uses: actions/download-artifact@v4
with:
name: release_url
- name: Get Release URL
id: get_release_url
if: contains(github.ref, 'tags/v')
run: |
echo ::set-output name=file_name::${REPOSITORY_NAME##*/}-${TAG_REF_NAME##*/v} # RepositoryName-v1.0.0
value=`cat release_url/release_url.txt`
echo ::set-output name=upload_url::$value
env:
TAG_REF_NAME: ${{ github.ref }}
REPOSITORY_NAME: ${{ github.repository }}
- name: Upload Release Asset
if: contains(github.ref, 'tags/v') && startsWith(matrix.os, 'macos')
uses: actions/upload-release-asset@v1.0.2
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
upload_url: ${{ steps.get_release_url.outputs.upload_url }}
asset_path: ./codon-darwin-arm64.tar.gz
asset_name: codon-darwin-arm64.tar.gz
upload_url: ${{ needs.create_release.outputs.upload_url }}
asset_path: ./codon-darwin-x86_64.tar.gz
asset_name: codon-darwin-x86_64.tar.gz
asset_content_type: application/gzip
- name: Upload Artifacts
if: startsWith(matrix.os, 'macos')
uses: actions/upload-artifact@v4
with:
name: ${{ matrix.os }}-arm64
path: codon-darwin-arm64.tar.gz
name: ${{ matrix.os }}-x86_64
path: codon-darwin-x86_64.tar.gz
- name: Upload Artifacts
if: startsWith(matrix.os, 'ubuntu') && matrix.os != 'ubuntu-arm-latest'
if: startsWith(matrix.os, 'ubuntu')
uses: actions/upload-artifact@v4
with:
name: ${{ matrix.os }}-x86_64
path: codon-linux-x86_64.tar.gz
- name: Upload Artifacts
if: matrix.os == 'ubuntu-arm-latest'
uses: actions/upload-artifact@v4
with:
name: ${{ matrix.os }}-arm64
path: codon-linux-arm64.tar.gz
# - name: Publish Package
# if: github.event_name == 'push' && startsWith(github.ref, 'refs/tags') && startsWith(matrix.os, 'ubuntu')
# uses: pypa/gh-action-pypi-publish@release/v1