Skip to content

Commit fc35457

Browse files
committed
feat(ci): create a new release when necessary
1 parent 5f48c6f commit fc35457

File tree

1 file changed

+31
-11
lines changed

1 file changed

+31
-11
lines changed

.github/workflows/build.yml

Lines changed: 31 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -33,16 +33,36 @@ jobs:
3333
steps:
3434
- name: Prepare artifacts
3535
run: |
36+
pacman --noconfirm -S jq
3637
cd /home/pcr
37-
mkdir sources
38-
ver=$(ls emacs* | sed -r 's/.*([0-9]{2}\.[0-9]{1,2}\.[0-9]{1,2}\.[0-9]{6}).*/\1/gi')
39-
#git clone ssh://aur@aur.archlinux.org/emacs-gcc-wayland-devel-bin.git
40-
#old_ver=$(cat PKGBUILD | grep "pkgver=" | sed -r 's/pkgver=//')
41-
#[[ "$old_ver" == "$ver" ]] && exit 1
42-
echo "pkg_version=$ver" >> $GITHUB_ENV
43-
tar xf "$(ls emacs*)" -C sources
44-
rm sources/.BUILDINFO sources/.MTREE sources/.PKGINFO
45-
- uses: actions/upload-artifact@v2
38+
version=$(ls emacs* | sed -r 's/.*([0-9]{2}\.[0-9]{1,2}\.[0-9]{1,2}\.[0-9]{6}).*/\1/gi')
39+
release=$(curl "$GITHUB_API_URL"/repos/"$GITHUB_REPOSITORY"/releases/latest | jq .tag_name)
40+
# Check if a new release is needed
41+
[[ "$version" == "$release" ]] && exit 1
42+
# Let's build the artifacts then!
43+
echo "pkg_version=$version" >> $GITHUB_ENV
44+
mkdir pkg
45+
tar xf "$(ls emacs*)" -C pkg
46+
rm pkg/.BUILDINFO pkg/.MTREE pkg/.PKGINFO
47+
tar czf "$version".tar.gz -C pkg .
48+
- name: Create Release
49+
id: create_release
50+
uses: actions/create-release@v1
51+
env:
52+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
4653
with:
47-
name: emacs-gcc-wayland-devel-${{ env.pkg_version }}
48-
path: /home/pcr/sources
54+
tag_name: ${{ env.pkg_version }}
55+
release_name: Release ${{ env.pkg_version }}
56+
body: Check emacs git repository.
57+
draft: false
58+
prerelease: false
59+
- name: Upload Release Asset
60+
id: upload-release-asset
61+
uses: actions/upload-release-asset@v1
62+
env:
63+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
64+
with:
65+
upload_url: ${{ steps.create_release.outputs.upload_url }}
66+
asset_path: /home/pcr/${{ env.pkg_version }}.tar.gz
67+
asset_name: ${{ env.pkg_version }}.tar.gz
68+
asset_content_type: application/gzip

0 commit comments

Comments
 (0)