Generate Downstream PRs #17
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
--- | |
name: Generate Downstream PRs | |
on: | |
workflow_dispatch: | |
inputs: | |
message: | |
description: "Message to include in the generated commits:" | |
required: true | |
jobs: | |
create-prs: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # tag=v4.1.1 | |
- name: Install Ansible | |
env: | |
DEBIAN_FRONTEND: noninteractive | |
run: | | |
sudo apt update && \ | |
sudo apt install -y software-properties-common && \ | |
sudo apt-add-repository ppa:ansible/ansible -y && \ | |
sudo apt install -y ansible | |
- name: Install deps for operators | |
run: | | |
sudo apt-get install \ | |
protobuf-compiler \ | |
krb5-user \ | |
libclang-dev \ | |
libkrb5-dev \ | |
liblzma-dev \ | |
libssl-dev \ | |
pkg-config | |
- name: Install jinja2 | |
run: pip install -r requirements.txt | |
# Create commit message depending on whether this is run manually or due to a scheduled run | |
- name: Set commit message for manual dispatch | |
if: ${{ github.event_name == 'workflow_dispatch' }} | |
run: | | |
echo "REASON=Manual run triggered by: ${{ github.event.sender.login }} with message [${{ github.event.inputs.message }}]" >> "$GITHUB_ENV" | |
- name: Set commit message for schedule | |
if: ${{ github.event_name == 'schedule' }} | |
run: | | |
echo "REASON=Daily run triggered" >> "$GITHUB_ENV" | |
# Generate PRs | |
- name: Run playbook | |
run: | | |
# Funnel via JSON to ensure that values are escaped properly | |
echo '{}' | jq '{commit_hash: $ENV.GITHUB_SHA, reason: $ENV.REASON, base_dir: $pwd, gh_access_token: $ENV.GH_ACCESS_TOKEN}' --arg pwd "$(pwd)" > vars.json | |
ansible-playbook playbook/playbook.yaml --extra-vars "@vars.json" | |
env: | |
GH_ACCESS_TOKEN: ${{ secrets.gh_access_token }} |