name: Synchronize Project Config on: pull_request_target: types: - opened - reopened - synchronize - closed branches-ignore: - "devel" jobs: sync-pr-project: runs-on: tumbleweed steps: - run: | zypper in -y python3-jinja2 mkdir -p ~/.config/osc cat >~/.config/osc/oscrc <<'EOF' [general] apiurl = https://api.opensuse.org [https://api.opensuse.org] user=${{ vars.OBS_USERNAME }} pass=${{ secrets.OBS_PASSWORD }} EOF # Waiting on PR to get merged for support in upstream action/checkout action - uses: 'https://github.com/yangskyboxlabs/action-checkout@sha256' with: object-format: 'sha256' - run: | if [ "${{ gitea.event.action }}" = "closed" ]; then PROJECT="$(grep PROJECT .obs/common.py | sed 's/PROJECT = "\(.*\)"/\1/')" osc rdelete "${PROJECT}:Staging:PR-${{ gitea.event.number }}" fi - env: SCM_URL: ${{ gitea.event.pull_request.head.repo.clone_url }}#${{ gitea.head_ref }} run: | if [ "${{ gitea.event.action }}" != "closed" ]; then PROJECT="$(grep PROJECT .obs/common.py | sed 's/PROJECT = "\(.*\)"/\1/')" python3 .obs/render_meta.py --pr ${{ gitea.event.number }} --scm-url "${SCM_URL}" | osc meta prj "${PROJECT}:Staging:PR-${{ gitea.event.number }}" -F - fi - run: | if [ "${{ gitea.event.action }}" != "closed" ]; then PROJECT="$(grep PROJECT .obs/common.py | sed 's/PROJECT = "\(.*\)"/\1/')" export OBS_PROJECT="${PROJECT}:Staging:PR-${{ gitea.event.number }}" python3 .obs/wait_obs.py fi