GitHub Action
build-rpm-action
build-rpm-action
builds a simple rpm package.
See build-deb-action if you want to create debian
package.
inputs:
summary:
description: 'Package summary.'
required: true
package:
description: 'Package name of debian package.'
required: true
package_root:
description: 'Directory of release files.'
required: true
maintainer:
description: 'Package maintainer name.'
required: true
vendor:
description: 'Package vendor.'
default: ''
version:
description: 'Package version.'
required: true
arch:
description: 'Package architecture.'
default: 'x86_64'
desc:
description: 'Package description.'
default: ''
license:
description: 'Package LICENSE.'
post:
description: 'Package post.'
default: ''
build_requires:
description: 'Package build requires.'
# NOTE: for nim parseops package bugs
default: '-'
requires:
description: 'Package requires.'
# NOTE: for nim parseops package bugs
default: '-'
outputs:
file_name:
description: 'File name of resulting .rpm file. This does not contain a debuginfo file.'
debuginfo_file_name:
description: 'File name of resulting .rpm debuginfo file.'
name: build
on:
push:
tags:
- 'v*.*.*'
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: create sample script
run: |
mkdir -p .rpmpkg/usr/bin
mkdir -p .rpmpkg/usr/lib/testbin
echo -e "echo hello" > .rpmpkg/usr/bin/testbin
echo -e "echo hello2" > .rpmpkg/usr/bin/testbin2
echo -e "a=1" > .rpmpkg/usr/lib/testbin/testbin.conf
chmod +x .rpmpkg/usr/bin/*
- uses: jiro4989/build-rpm-action@v2
with:
summary: 'testbin is a test script'
package: testbin
package_root: .rpmpkg
maintainer: jiro4989
version: ${{ github.ref }} # refs/tags/v*.*.*
arch: 'x86_64'
desc: 'test package'
- Create a new branch
- Commit
- Merge the branch into
develop
branch - Push
develop
branch - Check passing all tests
- Create a new pull request
- Merge the branch into
master
branch
This actions is using a DockerHub image. We must push docker-v0.0.0
git-tag
to create a new tagged docker image. Published a new tagged docker image, and
change tag of action.yml into develop
branch, and check passing all tests,
and merge into master
.
You can bump version on merging Pull Requests with specific labels (bump:major,bump:minor,bump:patch). Pushing tag manually by yourself also work.
This action updates major/minor release tags on a tag push. e.g. Update v1 and v1.2 tag when released v1.2.3. ref: https://help.github.com/en/articles/about-actions#versioning-your-action
This reviewdog action template itself is integrated with reviewdog to run lints which is useful for Docker container based actions.
Supported linters: