Skip to content

Commit

Permalink
Added autosubmission GitHub Action
Browse files Browse the repository at this point in the history
  • Loading branch information
lslezak committed Dec 1, 2023
1 parent f666947 commit 5df33aa
Show file tree
Hide file tree
Showing 3 changed files with 64 additions and 0 deletions.
15 changes: 15 additions & 0 deletions .github/workflows/osc/configure_osc.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
#! /bin/bash

# This helper script creates the "osc" configuration file with OBS credentials

CONFIG_FILE="$HOME/.config/osc/oscrc"

# do not overwrite the existing config accidentally
if [ -e "$CONFIG_FILE" ]; then
echo "ERROR: $CONFIG_FILE already exists"
exit 1
fi

TEMPLATE=$(dirname "${BASH_SOURCE[0]}")/oscrc.template
mkdir -p $(dirname "$CONFIG_FILE")
sed -e "s/@OBS_USER@/$OBS_USER/g" -e "s/@OBS_PASSWORD@/$OBS_PASSWORD/g" "$TEMPLATE" > "$CONFIG_FILE"
8 changes: 8 additions & 0 deletions .github/workflows/osc/oscrc.template
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
[general]
apiurl = https://api.opensuse.org

[https://api.opensuse.org]
user=@OBS_USER@
pass=@OBS_PASSWORD@
credentials_mgr_class=osc.credentials.PlaintextConfigFileCredentialsManager
trusted_prj=YaST:Head openSUSE:Factory
41 changes: 41 additions & 0 deletions .github/workflows/submit.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
# See https://docs.github.com/en/actions/reference/workflow-syntax-for-github-actions

name: Submit

on:
# allow running manually
workflow_dispatch:
# when committing to master
push:
# FIXME:
# branches: master
branches: autosubmission

jobs:
submit:
# do not run in forks
if: github.repository == 'yast/yast-devtools'

runs-on: ubuntu-latest

container:
image: registry.opensuse.org/yast/head/containers_tumbleweed/yast-rake:latest
# "osc build" needs to mount /proc in the build system chroot
options: --privileged

steps:
- name: Git Checkout
uses: actions/checkout@v4

- name: Fix permissions to avoid git failures
run: chown -R -c 0 .

- name: Configure osc
run: .github/workflows/osc/configure_osc.sh
env:
OBS_USER: ${{ secrets.OBS_USER }}
OBS_PASSWORD: ${{ secrets.OBS_PASSWORD }}

- name: Run rake
run: rake osc:sr

0 comments on commit 5df33aa

Please sign in to comment.