Compare commits

..

2 Commits

Author SHA1 Message Date
d2438e5099 fix: fix update template workflow
All checks were successful
CI for bec_testing_plugin / test (push) Successful in 32s
2026-02-24 16:04:04 +01:00
61756e83ed feat: add update template workflow
All checks were successful
CI for bec_testing_plugin / test (pull_request) Successful in 28s
CI for bec_testing_plugin / test (push) Successful in 29s
2026-02-24 14:25:31 +01:00
3 changed files with 50 additions and 18 deletions

View File

@@ -2,7 +2,7 @@
# It is needed to track the repo template version, and editing may break things.
# This file will be overwritten by copier on template updates.
_commit: v1.2.2-1-g970ab9d
_commit: v1.2.2
_src_path: https://github.com/bec-project/plugin_copier_template.git
make_commit: true
project_name: bec_testing_plugin

View File

@@ -46,17 +46,6 @@ jobs:
with:
python-version: "${{ inputs.PYTHON_VERSION || '3.11' }}"
- name: Checkout BEC Plugin Repository
uses: actions/checkout@v4
with:
repository: bec/bec_testing_plugin
ref: "${{ inputs.BEC_PLUGIN_REPO_BRANCH || github.head_ref || github.sha }}"
path: ./bec_testing_plugin
- name: Lint for merge conflicts
run: |
- name: Checkout BEC Core
uses: actions/checkout@v4
with:
@@ -78,6 +67,13 @@ jobs:
ref: "${{ inputs.BEC_WIDGETS_BRANCH || 'main' }}"
path: ./bec_widgets
- name: Checkout BEC Plugin Repository
uses: actions/checkout@v4
with:
repository: bec/bec_testing_plugin
ref: "${{ inputs.BEC_PLUGIN_REPO_BRANCH || github.head_ref || github.sha }}"
path: ./bec_testing_plugin
- name: Install dependencies
shell: bash
run: |

View File

@@ -6,8 +6,11 @@ permissions:
pull-requests: write
jobs:
test:
create_update_branch_and_pr:
runs-on: ubuntu-latest
permissions:
contents: write
pull-requests: write
steps:
- name: Setup Python
@@ -17,16 +20,49 @@ jobs:
- name: Install tools
run: |
pip install copier
pip install copier PySide6
- name: Checkout
uses: actions/checkout@v4
- name: Perform update
run: |
set -x
git config --global user.email "bec_ci_staging@psi.ch"
git config --global user.name "BEC automated CI"
branch="chore/update-template-$(python -m uuid)"
echo "switching to branch $branch"
git checkout -b $branch
msg = $(copier update --trust --defaults --conflict inline 2>&1 | sed -n 1p)
git add -A
git diff-index --quiet HEAD || git commit -a -m $msg
git push -u origin $branch
echo "Running copier update..."
output="$(copier update --trust --defaults --conflict inline 2>&1)"
echo "$output"
msg="$(printf '%s\n' "$output" | head -n 1)"
if ! grep -q "make_commit: true" .copier-answers.yml ; then
echo "Autocommit not made, committing..."
git add -A
git commit -a -m "$msg"
fi
if diff-index --quiet HEAD ; then
echo "No changes detected"
exit 0
fi
curl -s \
-H "Authorization: token ${{ secrets.CI_PR }}" \
"https://gitea.psi.ch/api/v1/user"
git push -u origin $branch
curl -X POST "https://gitea.psi.ch/api/v1/repos/${{ gitea.repository }}/pulls" \
-H "Authorization: token ${{ secrets.CI_PR }}" \
-H "Content-Type: application/json" \
-d "{
\"title\": \"Template: $(echo $msg)\",
\"body\": \"This PR was created by Gitea Actions\",
\"head\": \"$(echo $branch)\",
\"base\": \"main\"
}"