Skip to content

chore(deps): update github artifact actions to v4 (major) #44

chore(deps): update github artifact actions to v4 (major)

chore(deps): update github artifact actions to v4 (major) #44

Workflow file for this run

name: build-and-release
on:
push:
branches:
- unstable
- main
tags:
- v*
pull_request:
branches:
- main
- unstable
- development
permissions:
contents: read
jobs:
release-test:
if: startsWith(github.ref, 'refs/tags/v') || github.ref == 'refs/heads/unstable' || github.ref == 'refs/heads/main'
outputs:
version: ${{ steps.release.outputs.version }}
name: Make Release Assets
runs-on: ubuntu-latest
env:
GPG_SIGNING_KEY: ${{ secrets.GPG_SIGNING_KEY }}
steps:
- uses: actions/checkout@v3
with:
# we need the whole thing so we can count commits.
fetch-depth: '0'
- uses: actions/setup-go@v3
with:
go-version: stable
- name: make-release
id: release
run: |
sudo apt install -y rpm fakeroot zip debsigs gnupg jq
sudo gem install --no-document fpm
echo "${GPG_SIGNING_KEY}" | gpg --import -
go install github.com/davidnewhall/[email protected]
go install github.com/akavel/rsrc@latest
make release
source settings.sh ; echo "version=${VERSION}-${ITERATION}" >> $GITHUB_OUTPUT
- name: upload artifacts
uses: actions/upload-artifact@v4
with:
name: release
path: release
deploy-unstable-packagecloud:
# description: "Uploads pre-built RPM and DEB packages to packagecloud.io/golift"
if: github.ref == 'refs/heads/unstable'
needs: release-test
name: Deploy Unstable PackageCloud
runs-on: ubuntu-latest
steps:
- name: Download release files
uses: actions/download-artifact@v4
with:
name: release
- uses: golift/upload-packagecloud@v1
with:
userrepo: golift/unstable
apitoken: ${{ secrets.PACKAGECLOUD_TOKEN }}
packages: .
rpmdists: el/6
debdists: ubuntu/focal
deploy-packagecloud:
# description: "Uploads pre-built RPM and DEB packages to packagecloud.io/golift"
if: startsWith(github.ref, 'refs/tags/v')
needs: release-test
name: Deploy Release PackageCloud
runs-on: ubuntu-latest
steps:
- name: Download release files
uses: actions/download-artifact@v4
with:
name: release
- uses: golift/upload-packagecloud@v1
with:
userrepo: golift/pkgs
apitoken: ${{ secrets.PACKAGECLOUD_TOKEN }}
packages: .
rpmdists: el/6
debdists: ubuntu/focal
deploy-github-release:
# description: uploads all the built release assets to the GitHub Release.
if: startsWith(github.ref, 'refs/tags/v')
permissions:
contents: write
needs: [release-test]
strategy:
matrix:
files: [release]
name: Deploy GitHub Release
runs-on: ubuntu-latest
steps:
- name: Download ${{ matrix.files }} Files
uses: actions/download-artifact@v4
with:
name: ${{ matrix.files }}
- name: Publish ${{ matrix.files }} artifacts to github
uses: softprops/action-gh-release@v1
with:
files: |
*.rpm
*.deb
*.txz
*.zip
*.dmg
*.gz
*.txt
archlinux-aur:
# description: creates and uploads and aur file to the golift/aur repo for arch linux.
needs: deploy-github-release
name: Deploy ArchLinux AUR
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
with:
fetch-depth: '0'
- name: Deploy Aurch AUR
run: bash init/archlinux/aur-deploy.sh
env:
DEPLOY_KEY: ${{ secrets.AUR_DEPLOY_KEY }}
homebrew-formula:
# description: creates and uploads a homebrew formula file to the golift/homebrew-mugs repo.
needs: deploy-github-release
name: Deploy Homebrew Formula
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
with:
fetch-depth: '0'
- name: Deploy Homebrew Formula
run: bash init/homebrew/formula-deploy.sh
env:
DEPLOY_KEY: ${{ secrets.HOMEBREW_DEPLOY_KEY }}