Skip to content

Create Other Post

Create Other Post #10

name: Create New Post PR
description: Creates a new PR. The PR's body will be used to populate a new post in my blog.
on:
workflow_dispatch:
inputs:
name:
type: string
required: true
description: Name of the branch to create. It will be lowercased and all spaces will be replaced by dashes.
jobs:
create-branch-and-pr:
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Make draft item and get branch name
id: get_name
run: |
git config --global user.name 'github-actions[bot]'
git config --global user.email 'github-actions[bot]@users.noreply.github.com'
branch_name=$(echo "${{ github.event.inputs.name }}" | tr '[:upper:]' '[:lower:]' | tr ' ' '-')
# Create an item in drafts directory
touch drafts/${branch_name}
echo "branch_name=$branch_name" >> $GITHUB_OUTPUT
- name: Create Pull Request
id: create_pr
uses: peter-evans/create-pull-request@v7
with:
token: ${{ secrets.GITHUB_TOKEN }}
branch: ${{ steps.get_name.outputs.branch_name }}
base: main
title: post/${{ steps.get_name.outputs.branch_name }}
body-path: '${{ github.workspace }}/.github/PULL_REQUEST_TEMPLATE/post.md'
labels: 'post'