Skip to content

Update packagers

Update packagers #66

name: Update packagers
on:
workflow_dispatch:
schedule:
- cron: "0 0 * * 1"
jobs:
check-for-updates:
name: Check packagers updates
runs-on: ubuntu-20.04
env:
DEBIAN_FRONTEND: noninteractive
strategy:
fail-fast: false
matrix:
packager: [cargo-deb, cargo-generate-rpm]
permissions: write-all
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Get versions and set env vars
run: |
case ${{ matrix.packager }} in
cargo-deb)
VER_NAME='CARGO_DEB_VER'
echo "REPO_URL=https://github.com/kornelski/cargo-deb" >> $GITHUB_ENV
;;
cargo-generate-rpm)
VER_NAME='CARGO_GENERATE_RPM_VER'
echo "REPO_URL=https://github.com/cat-in-136/cargo-generate-rpm" >> $GITHUB_ENV
;;
esac
echo "VER_NAME=${VER_NAME}" >> $GITHUB_ENV
echo "OLD_VER=$(cat .github/workflows/pkg.yml | sed -n "s/.*${VER_NAME}: \(.*\)/\1/p")" >> $GITHUB_ENV
echo "NEW_VER=$(curl -s -X GET https://crates.io/api/v1/crates/${{ matrix.packager }} | jq '.versions[0].num' | tr -d '"')" >> $GITHUB_ENV
- name: Make changes to pkg workflow
if: env.OLD_VER != env.NEW_VER
run: |
sed -i "s/\(\s${VER_NAME}: \)\(.*\)/\1${NEW_VER}/g" .github/workflows/pkg.yml
- name: Create Pull Request
if: env.OLD_VER != env.NEW_VER
uses: peter-evans/create-pull-request@v4
with:
token: ${{ secrets.GITHUB_TOKEN }}
commit-message: Bump ${{ matrix.packager }} from ${{ env.OLD_VER }} to ${{ env.NEW_VER }}
committer: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
author: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
branch: cargo/${{ matrix.packager }}-${{ env.NEW_VER }}
delete-branch: true
base: master
title: "Bump ${{ matrix.packager }} from ${{ env.OLD_VER }} to ${{ env.NEW_VER }}"
body: |
Bumps [${{ matrix.packager }}](${{ env.REPO_URL }}) from ${{ env.OLD_VER }} to ${{ env.NEW_VER }}.
This PR is auto-generated by [create-pull-request](https://github.com/peter-evans/create-pull-request) using the [update-packagers](https://github.com/ultram4rine/alerter/blob/master/.github/workflows/update-packagers.yml) workflow.
labels: |
dependencies
rust