Skip to content

Publish Cloudflare Networks #367

Publish Cloudflare Networks

Publish Cloudflare Networks #367

---
name: "Publish Cloudflare Networks"
on:
workflow_dispatch:
schedule:
- cron: "0 0 * * *"
env:
DEFAULT_CLOUDFLARE_NETWORKS_FILE: |-
kubernetes/apps/networking/ingress-nginx/app/cloudflare-networks.txt
jobs:
cloudflare-networks:
name: Cloudflare Networks
runs-on: ubuntu-latest
steps:
- name: Generate Token
uses: tibdex/github-app-token@32691ba7c9e7063bd457bd8f2a5703138591fa58 # v1.9.0
id: generate-token
with:
app_id: "${{ secrets.BOT_APP_ID }}"
private_key: "${{ secrets.BOT_APP_PRIVATE_KEY }}"
- name: Checkout
uses: actions/checkout@f43a0e5ff2bd294095638e18286ca9a3d1956744 # v3.6.0
with:
token: "${{ steps.generate-token.outputs.token }}"
- name: Cloudflare Networks
run: |
cloudflare_networks_file=$(find . -name "cloudflare-networks.txt" -print -quit)
if [[ -f "${cloudflare_networks_file}" ]]; then
npx zx ./.github/scripts/cloudflareNetworks.mjs > "${cloudflare_networks_file}"
exit 0
fi
npx zx ./.github/scripts/cloudflareNetworks.mjs > ${{ env.DEFAULT_CLOUDFLARE_NETWORKS_FILE }}
- name: Create pull request
uses: peter-evans/create-pull-request@38e0b6e68b4c852a5500a94740f0e535e0d7ba54 # v4.2.4
with:
token: "${{ steps.generate-token.outputs.token }}"
branch: github-action/update-cloudflare-networks
delete-branch: true
title: "chore(github-action): update cloudflare networks"
signoff: true
commit-message: "chore(github-action): update cloudflare networks"
body: |
Update cloudflare networks configmap from https://api.cloudflare.com/client/v4/ips
labels: |
renovate/github-action