Skip to content
name: Update Remote Settings Dumps
on:
push:
branches:
- gh-action-packaged-data
schedule:
- cron: '0 0 * * *'
workflow_dispatch:
inputs:
base_branch:
description: 'Base branch to create PR against'
required: true
default: 'main'
#on:
# schedule:
# - cron: "0 0 * * 0" # Run weekly on Sunday at midnight
# workflow_dispatch: # Allow manual trigger
# inputs:
# base_branch:
# description: 'Base branch'
# required: true
# default: 'main'
jobs:
update-dumps:
runs-on: ubuntu-latest
permissions:
contents: write
pull-requests: write
steps:
- name: Checkout repository
uses: actions/checkout@v4
with:
ref: main
fetch-depth: 0
submodules: recursive
- name: Set up repository and install Rust
run: |
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y
source $HOME/.cargo/env
- name: Create new branch and run dump
run: |
# Configure git
git config --local user.email "[email protected]"
git config --local user.name "Bastian Gruber"
# Create new branch
BRANCH_NAME="update-remote-settings-dumps-$(date +%Y%m%d)"
git checkout -b $BRANCH_NAME
# Run the dump command
cargo remote-settings dump-sync
# Check for changes and create PR if needed
git add ./components/remote_settings/dumps/
if git status --porcelain -- ./components/remote_settings/dumps/ | grep .; then
git commit -m "chore: Update remote settings dumps"
git push origin $BRANCH_NAME
# Create the PR (gh is installed on GH Actions)
gh pr create \
--title "Update Remote Settings Dumps" \
--body "Automated PR to update remote settings dumps.
Changes detected in: \`./components/remote_settings/dumps/\`
Generated by the Update Remote Settings Dumps workflow." \
--base main \
--head $BRANCH_NAME
else
echo "No changes detected in dumps directory"
fi