Merge pull request #844 from c-po/T6674-tacacs #78
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: Trigger to build package | |
on: | |
push: | |
branches: | |
- current | |
jobs: | |
changes: | |
runs-on: ubuntu-latest | |
env: | |
REF: main # Used for curl to trigger build package | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v4 | |
with: | |
ref: ${{ github.ref_name }} | |
- uses: dorny/paths-filter@v3 | |
id: changes | |
with: | |
base: ${{ github.ref_name }} | |
filters: | | |
amazon-cloudwatch-agent: | |
- 'scripts/package-build/amazon-cloudwatch-agent/**' | |
amazon-ssm-agent: | |
- 'scripts/package-build/amazon-ssm-agent/**' | |
aws-gwlbtun: | |
- 'scripts/package-build/aws-gwlbtun/**' | |
ddclient: | |
- 'scripts/package-build/ddclient/**' | |
dropbear: | |
- 'scripts/package-build/dropbear/**' | |
ethtool: | |
- 'scripts/package-build/ethtool/**' | |
frr: | |
- 'scripts/package-build/frr/**' | |
frr_exporter: | |
- 'scripts/package-build/frr_exporter/**' | |
hostap: | |
- 'scripts/package-build/hostap/**' | |
hsflowd: | |
- 'scripts/package-build/hsflowd/**' | |
isc-dhcp: | |
- 'scripts/package-build/isc-dhcp/**' | |
kea: | |
- 'scripts/package-build/kea/**' | |
keepalived: | |
- 'scripts/package-build/keepalived/**' | |
linux-kernel: | |
- 'data/defaults.toml' | |
- 'scripts/package-build/linux-kernel/**' | |
ndppd: | |
- 'scripts/package-build/ndppd/**' | |
net-snmp: | |
- 'scripts/package-build/net-snmp/**' | |
netfilter: | |
- 'scripts/package-build/netfilter/**' | |
node_exporter: | |
- 'scripts/package-build/node_exporter/**' | |
opennhrp: | |
- 'scripts/package-build/opennhrp/**' | |
openvpn-otp: | |
- 'scripts/package-build/openvpn-otp/**' | |
owamp: | |
- 'scripts/package-build/owamp/**' | |
pam_tacplus: | |
- 'scripts/package-build/pam_tacplus/**' | |
pmacct: | |
- 'scripts/package-build/pmacct/**' | |
podman: | |
- 'scripts/package-build/podman/**' | |
pyhumps: | |
- 'scripts/package-build/pyhumps/**' | |
radvd: | |
- 'scripts/package-build/radvd/**' | |
strongswan: | |
- 'scripts/package-build/strongswan/**' | |
tacacs: | |
- 'scripts/package-build/tacacs/**' | |
telegraf: | |
- 'scripts/package-build/telegraf/**' | |
waagent: | |
- 'scripts/package-build/waagent/**' | |
wide-dhcpv6: | |
- 'scripts/package-build/wide-dhcpv6/**' | |
xen-guest-agent: | |
- 'scripts/package-build/xen-guest-agent/**' | |
- name: Trigger builds for changed packages | |
run: | | |
set -eux | |
function trigger_build() { | |
PACKAGE_NAME=$1 | |
echo "${PACKAGE_NAME} change detected!" | |
curl -L \ | |
-X POST \ | |
-H "Accept: application/vnd.github+json" \ | |
-H "Authorization: Bearer ${{ secrets.PAT }}" \ | |
-H "X-GitHub-Api-Version: 2022-11-28" \ | |
https://api.github.com/repos/${{ secrets.REMOTE_OWNER }}/${{ secrets.REMOTE_REUSE_REPO }}/actions/workflows/build-package.yml/dispatches \ | |
-d '{"ref": "${{ env.REF }}", "inputs":{"package_name":"'"$PACKAGE_NAME"'", "gpg_key_id": "${{ secrets.GPG_KEY_ID }}", "package_branch": "${{ github.ref_name }}"}}' | |
} | |
# Trigger builds based on detected changes | |
if [ "${{ steps.changes.outputs.amazon-cloudwatch-agent }}" == "true" ]; then | |
trigger_build "amazon-cloudwatch-agent" | |
fi | |
if [ "${{ steps.changes.outputs.amazon-ssm-agent }}" == "true" ]; then | |
trigger_build "amazon-ssm-agent" | |
fi | |
if [ "${{ steps.changes.outputs.aws-gwlbtun }}" == "true" ]; then | |
trigger_build "aws-gwlbtun" | |
fi | |
if [ "${{ steps.changes.outputs.ddclient }}" == "true" ]; then | |
trigger_build "ddclient" | |
fi | |
if [ "${{ steps.changes.outputs.dropbear }}" == "true" ]; then | |
trigger_build "dropbear" | |
fi | |
if [ "${{ steps.changes.outputs.ethtool }}" == "true" ]; then | |
trigger_build "ethtool" | |
fi | |
if [ "${{ steps.changes.outputs.frr }}" == "true" ]; then | |
trigger_build "frr" | |
fi | |
if [ "${{ steps.changes.outputs.frr_exporter }}" == "true" ]; then | |
trigger_build "frr_exporter" | |
fi | |
if [ "${{ steps.changes.outputs.hostap }}" == "true" ]; then | |
trigger_build "hostap" | |
fi | |
if [ "${{ steps.changes.outputs.hsflowd }}" == "true" ]; then | |
trigger_build "hsflowd" | |
fi | |
if [ "${{ steps.changes.outputs.isc-dhcp }}" == "true" ]; then | |
trigger_build "isc-dhcp" | |
fi | |
if [ "${{ steps.changes.outputs.kea }}" == "true" ]; then | |
trigger_build "kea" | |
fi | |
if [ "${{ steps.changes.outputs.keepalived }}" == "true" ]; then | |
trigger_build "keepalived" | |
fi | |
if [ "${{ steps.changes.outputs.linux-kernel }}" == "true" ]; then | |
trigger_build "linux-kernel" | |
fi | |
if [ "${{ steps.changes.outputs.ndppd }}" == "true" ]; then | |
trigger_build "ndppd" | |
fi | |
if [ "${{ steps.changes.outputs.net-snmp }}" == "true" ]; then | |
trigger_build "net-snmp" | |
fi | |
if [ "${{ steps.changes.outputs.netfilter }}" == "true" ]; then | |
trigger_build "netfilter" | |
fi | |
if [ "${{ steps.changes.outputs.node_exporter }}" == "true" ]; then | |
trigger_build "node_exporter" | |
fi | |
if [ "${{ steps.changes.outputs.opennhrp }}" == "true" ]; then | |
trigger_build "opennhrp" | |
fi | |
if [ "${{ steps.changes.outputs.openvpn-otp }}" == "true" ]; then | |
trigger_build "openvpn-otp" | |
fi | |
if [ "${{ steps.changes.outputs.owamp }}" == "true" ]; then | |
trigger_build "owamp" | |
fi | |
if [ "${{ steps.changes.outputs.pam_tacplus }}" == "true" ]; then | |
trigger_build "pam_tacplus" | |
fi | |
if [ "${{ steps.changes.outputs.pmacct }}" == "true" ]; then | |
trigger_build "pmacct" | |
fi | |
if [ "${{ steps.changes.outputs.podman }}" == "true" ]; then | |
trigger_build "podman" | |
fi | |
if [ "${{ steps.changes.outputs.pyhumps }}" == "true" ]; then | |
trigger_build "pyhumps" | |
fi | |
if [ "${{ steps.changes.outputs.radvd }}" == "true" ]; then | |
trigger_build "radvd" | |
fi | |
if [ "${{ steps.changes.outputs.strongswan }}" == "true" ]; then | |
trigger_build "strongswan" | |
fi | |
if [ "${{ steps.changes.outputs.tacacs }}" == "true" ]; then | |
trigger_build "tacacs" | |
fi | |
if [ "${{ steps.changes.outputs.telegraf }}" == "true" ]; then | |
trigger_build "telegraf" | |
fi | |
if [ "${{ steps.changes.outputs.waagent }}" == "true" ]; then | |
trigger_build "waagent" | |
fi | |
if [ "${{ steps.changes.outputs.wide-dhcpv6 }}" == "true" ]; then | |
trigger_build "ethtool" | |
fi | |
if [ "${{ steps.changes.outputs.xen-guest-agent }}" == "true" ]; then | |
trigger_build "xen-guest-agent" | |
fi |