agama/.github/workflows/obs-service-shared.yml
Ladislav Slezák b8709ebc68
Update GitHub Actions to the latest versions
Many Actions complain that an old Node20 code is used.
Update the actions to use newer versions.

https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
2026-03-27 17:07:29 +01:00

75 lines
2.3 KiB
YAML

# this is a shared workflow, not called as a top level workflow
name: Update OBS Service Package
permissions:
contents: read
on:
workflow_call:
secrets:
OBS_PASSWORD:
required: true
jobs:
update_service:
# do not run in forks which do not set the OBS_PROJECTS and OBS_USER variables,
# or the mapping for the current branch is missing
if: vars.OBS_PROJECTS && fromJson(vars.OBS_PROJECTS)[github.ref_name] && vars.OBS_USER
runs-on: ubuntu-latest
container:
image: registry.opensuse.org/opensuse/tumbleweed:latest
env:
# to avoid Ruby UTF-8 errors (the default is "POSIX")
LC_ALL: en_US.UTF-8
steps:
- name: Configure and refresh repositories
# disable unused repositories to have a faster refresh
run: zypper modifyrepo -d repo-non-oss repo-openh264 repo-update && zypper ref
- name: Install tools
run: zypper --non-interactive install --no-recommends
bzip2
diffutils
git
obs-service-format_spec_file
osc
ruby
'rubygem(gem2rpm)'
'rubygem(yast-rake)'
- name: Git Checkout (full history)
if: ${{ github.ref_type != 'tag' }}
uses: actions/checkout@v6
with:
# fetch all history, we need to find the latest tag and offset for the version number
fetch-depth: 0
- name: Configure git
run: git config --global --add safe.directory "$GITHUB_WORKSPACE"
- name: Git Checkout
uses: actions/checkout@v6
with:
# fetch all history with tags, we need to find the latest version tag
fetch-depth: 0
fetch-tags: true
- name: Configure osc
run: .github/workflows/configure_osc.sh
env:
OBS_USER: ${{ vars.OBS_USER }}
OBS_PASSWORD: ${{ secrets.OBS_PASSWORD }}
- name: Commit the rubygem-agama-yast package to ${{ fromJson(vars.OBS_PROJECTS)[github.ref_name] }}
run: rake osc:commit
working-directory: ./service
env:
# do not build the package with "osc", it takes long time
# and does not provide much value
SKIP_OSC_BUILD: 1
OBS_PROJECT: ${{ fromJson(vars.OBS_PROJECTS)[github.ref_name] }}