Skip to content

Create Pull Request to reproschema-py #7

Create Pull Request to reproschema-py

Create Pull Request to reproschema-py #7

name: Create Pull Request to reproschema-py
on:
workflow_dispatch:
inputs:
version:
description: 'version number'
required: true
type: string
jobs:
create-pull-request:
runs-on: ubuntu-latest
steps:
- name: Check out the repository
uses: actions/checkout@v3
- name: Set up Git and cloning repository
env:
TARGET_REPO: repronim/reproschema-py
PERSONAL_ACCESS_TOKEN: ${{ secrets.PERSONAL_ACCESS_TOKEN }}
run: |
git config --global user.name "djarecka"
git config --global user.email "[email protected]"
git clone https://x-access-token:${{ secrets.PERSONAL_ACCESS_TOKEN }}@github.com/$TARGET_REPO.git
- name: Make changes to target repository
id: changes
run: |
# updating pydantic model
cp releases/${{ inputs.version }}/reproschema_model.py reproschema-py/reproschema/models/model.py
cd reproschema-py
# updating url to context
echo "# this is automatically updated after reproschema new release" > reproschema/context_url.py
echo "CONTEXTFILE_URL = 'https://raw.githubusercontent.com/ReproNim/reproschema/main/releases/${{ inputs.version }}/reproschema'" >> reproschema/context_url.py
git checkout -b release_${{ inputs.version }}
git add reproschema/models/model.py
git add reproschema/context_url.py
git commit -m "Add new version of the pydantic model and new context url"
cd ..
- name: Push changes to reproschema-py
env:
TARGET_REPO: repronim/reproschema-py
PERSONAL_ACCESS_TOKEN: ${{ secrets.PERSONAL_ACCESS_TOKEN }}
run: |
cd reproschema-py
git push origin release_${{ inputs.version }}
- name: Create pull request to reproschema-py
env:
TARGET_REPO: repronim/reproschema-py
PERSONAL_ACCESS_TOKEN: ${{ secrets.PERSONAL_ACCESS_TOKEN }}
run: |
curl -X POST -H "Authorization: token ${{ secrets.PERSONAL_ACCESS_TOKEN }}" \
-d '{"title":"Automated PR: Add new version of the model: ${{ inputs.version }}", "head":"release_${{ inputs.version }}", "base":"main"}' \
https://api.github.com/repos/$TARGET_REPO/pulls