diff options
Diffstat (limited to '.github/workflows')
-rw-r--r-- | .github/workflows/check-scripts-executable.yml | 32 | ||||
-rw-r--r-- | .github/workflows/cleanup-mirror-pr-branch.yml | 16 | ||||
-rw-r--r-- | .github/workflows/mirror-pr-and-sync.yml | 21 | ||||
-rw-r--r-- | .github/workflows/repo-sync.yml | 17 | ||||
-rw-r--r-- | .github/workflows/trigger-docker-image-build.yml | 47 | ||||
-rw-r--r-- | .github/workflows/trigger-pr-mirror-repo-sync.yml | 18 | ||||
-rw-r--r-- | .github/workflows/trigger_rebuild_packages.yml | 68 |
7 files changed, 166 insertions, 53 deletions
diff --git a/.github/workflows/check-scripts-executable.yml b/.github/workflows/check-scripts-executable.yml deleted file mode 100644 index 123e9895..00000000 --- a/.github/workflows/check-scripts-executable.yml +++ /dev/null @@ -1,32 +0,0 @@ -name: "Check for Jenkins build scripts has executable bit" - -on: - pull_request: - branches: - - current - - circinus - - sagitta - - equuleus - -permissions: - contents: read - -jobs: - check-scripts-executable: - runs-on: ubuntu-latest - - steps: - - uses: actions/checkout@v3 - with: - repository: ${{ github.repository }} - - name: Checking scripts are executable - run: | - files=$(find packages/ -type f -name '*.py' -or -name '*.sh' -not -executable -print) - if [[ -n $files ]]; then - echo "Found files without executable bit:" - for file in $files; do - echo $file; - done; - exit 1; - fi - shell: bash diff --git a/.github/workflows/cleanup-mirror-pr-branch.yml b/.github/workflows/cleanup-mirror-pr-branch.yml new file mode 100644 index 00000000..a62e44b2 --- /dev/null +++ b/.github/workflows/cleanup-mirror-pr-branch.yml @@ -0,0 +1,16 @@ +name: Cleanup pr mirror branch + +on: + pull_request: + types: [closed] + branches: + - current + +permissions: + contents: write + +jobs: + call-delete-branch: + if: github.repository_owner != 'vyos' + uses: vyos/.github/.github/workflows/cleanup-mirror-pr-branch.yml@current + secrets: inherit diff --git a/.github/workflows/mirror-pr-and-sync.yml b/.github/workflows/mirror-pr-and-sync.yml new file mode 100644 index 00000000..120e116d --- /dev/null +++ b/.github/workflows/mirror-pr-and-sync.yml @@ -0,0 +1,21 @@ +name: Create Mirror PR and Repo Sync +on: + workflow_dispatch: + inputs: + sync_branch: + description: 'branch to sync' + required: true + type: string + +permissions: + pull-requests: write + contents: write + +jobs: + call-mirror-pr-and-sync: + if: github.repository_owner != 'vyos' + uses: VyOS-Networks/vyos-reusable-workflows/.github/workflows/mirror-pr-and-sync.yml@main + with: + sync_branch: ${{ inputs.sync_branch }} + secrets: + PAT: ${{ secrets.PAT }} diff --git a/.github/workflows/repo-sync.yml b/.github/workflows/repo-sync.yml deleted file mode 100644 index 6da2fb40..00000000 --- a/.github/workflows/repo-sync.yml +++ /dev/null @@ -1,17 +0,0 @@ -name: Repo-sync - -on: - pull_request_target: - types: - - closed - branches: - - current - workflow_dispatch: - -jobs: - trigger-sync: - uses: vyos/.github/.github/workflows/trigger-repo-sync.yml@current - secrets: - REMOTE_REPO: ${{ secrets.REMOTE_REPO }} - REMOTE_OWNER: ${{ secrets.REMOTE_OWNER }} - PAT: ${{ secrets.PAT }} diff --git a/.github/workflows/trigger-docker-image-build.yml b/.github/workflows/trigger-docker-image-build.yml new file mode 100644 index 00000000..5e0b07ef --- /dev/null +++ b/.github/workflows/trigger-docker-image-build.yml @@ -0,0 +1,47 @@ +name: Trigger Docker image build
+
+on:
+ pull_request_target:
+ types:
+ - closed
+ branches:
+ - current
+
+permissions:
+ packages: write
+ contents: read
+ attestations: write
+ id-token: write
+ pull-requests: read
+
+jobs:
+ track-changes:
+ if: github.event.pull_request.merged == true
+ runs-on: ubuntu-latest
+
+ env:
+ REF: main # Used for curl to trigger image build
+
+ steps:
+ - name: Checkout vyos/vyos-build repo
+ uses: actions/checkout@v4
+ with:
+ ref: ${{ github.ref_name }}
+
+ - uses: dorny/paths-filter@v3
+ id: changes
+ with:
+ filters: |
+ docker-dir:
+ - 'docker/**'
+
+ - name: "Trigger Docker image build for ${{ github.ref_name }}"
+ if: ${{ steps.changes.outputs.docker-dir == 'true' }} + run: |
+ 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-docker-image.yml/dispatches \
+ -d '{"ref": "${{ env.REF }}", "inputs":{"branch":"${{ github.ref_name }}", "environment":"production"}}'
\ No newline at end of file diff --git a/.github/workflows/trigger-pr-mirror-repo-sync.yml b/.github/workflows/trigger-pr-mirror-repo-sync.yml new file mode 100644 index 00000000..7b4a241f --- /dev/null +++ b/.github/workflows/trigger-pr-mirror-repo-sync.yml @@ -0,0 +1,18 @@ +name: Trigger Mirror PR and Repo Sync +on: + pull_request_target: + types: + - closed + branches: + - current + +permissions: + pull-requests: write + contents: write + issues: write + +jobs: + call-trigger-mirror-pr-repo-sync: + if: github.repository_owner == 'vyos' && github.event.pull_request.merged == true + uses: vyos/.github/.github/workflows/trigger-pr-mirror-repo-sync.yml@current + secrets: inherit diff --git a/.github/workflows/trigger_rebuild_packages.yml b/.github/workflows/trigger_rebuild_packages.yml index 2be662e8..cfaf6d5c 100644 --- a/.github/workflows/trigger_rebuild_packages.yml +++ b/.github/workflows/trigger_rebuild_packages.yml @@ -23,8 +23,16 @@ jobs: 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/**' + blackbox_exporter: + - 'scripts/package-build/blackbox_exporter/**' + bash-completion: + - 'scripts/package-build/bash-completion/**' ddclient: - 'scripts/package-build/ddclient/**' dropbear: @@ -33,6 +41,8 @@ jobs: - 'scripts/package-build/ethtool/**' frr: - 'scripts/package-build/frr/**' + frr_exporter: + - 'scripts/package-build/frr_exporter/**' hostap: - 'scripts/package-build/hostap/**' hsflowd: @@ -43,6 +53,10 @@ jobs: - 'scripts/package-build/kea/**' keepalived: - 'scripts/package-build/keepalived/**' + libnss-mapuser: + - 'scripts/package-build/libnss-mapuser/**' + libpam-radius-auth: + - 'scripts/package-build/libpam-radius-auth/**' linux-kernel: - 'data/defaults.toml' - 'scripts/package-build/linux-kernel/**' @@ -52,8 +66,8 @@ jobs: - 'scripts/package-build/net-snmp/**' netfilter: - 'scripts/package-build/netfilter/**' - opennhrp: - - 'scripts/package-build/opennhrp/**' + node_exporter: + - 'scripts/package-build/node_exporter/**' openvpn-otp: - 'scripts/package-build/openvpn-otp/**' owamp: @@ -70,12 +84,18 @@ jobs: - 'scripts/package-build/radvd/**' strongswan: - 'scripts/package-build/strongswan/**' + tacacs: + - 'scripts/package-build/tacacs/**' telegraf: - 'scripts/package-build/telegraf/**' + vpp: + - 'scripts/package-build/vpp/**' 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: | @@ -93,10 +113,26 @@ jobs: } # 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.bash-completion }}" == "true" ]; then + trigger_build "bash-completion" + fi + + if [ "${{ steps.changes.outputs.blackbox_exporter }}" == "true" ]; then + trigger_build "blackbox_exporter" + fi + if [ "${{ steps.changes.outputs.ddclient }}" == "true" ]; then trigger_build "ddclient" fi @@ -113,6 +149,10 @@ jobs: 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 @@ -133,6 +173,14 @@ jobs: trigger_build "keepalived" fi + if [ "${{ steps.changes.outputs.libnss-mapuser }}" == "true" ]; then + trigger_build "libnss-mapuser" + fi + + if [ "${{ steps.changes.outputs.libpam-radius-auth }}" == "true" ]; then + trigger_build "libpam-radius-auth" + fi + if [ "${{ steps.changes.outputs.linux-kernel }}" == "true" ]; then trigger_build "linux-kernel" fi @@ -149,8 +197,8 @@ jobs: trigger_build "netfilter" fi - if [ "${{ steps.changes.outputs.opennhrp }}" == "true" ]; then - trigger_build "opennhrp" + if [ "${{ steps.changes.outputs.node_exporter }}" == "true" ]; then + trigger_build "node_exporter" fi if [ "${{ steps.changes.outputs.openvpn-otp }}" == "true" ]; then @@ -185,10 +233,18 @@ jobs: 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.vpp }}" == "true" ]; then + trigger_build "vpp" + fi + if [ "${{ steps.changes.outputs.waagent }}" == "true" ]; then trigger_build "waagent" fi @@ -196,3 +252,7 @@ jobs: 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 |