diff --git a/.github/workflows/add-pr-labels.yml b/.github/workflows/add-pr-labels.yml index a7ee8446f..a0c076064 100644 --- a/.github/workflows/add-pr-labels.yml +++ b/.github/workflows/add-pr-labels.yml @@ -1,20 +1,16 @@ --- name: Add pull request labels on: pull_request_target: branches: - current - - crux - - equuleus - - sagitta - - circinus permissions: pull-requests: write contents: read jobs: add-pr-label: uses: vyos/.github/.github/workflows/add-pr-labels.yml@current secrets: inherit diff --git a/.github/workflows/chceck-pr-message.yml b/.github/workflows/chceck-pr-message.yml index c567a5934..625ba2d75 100644 --- a/.github/workflows/chceck-pr-message.yml +++ b/.github/workflows/chceck-pr-message.yml @@ -1,21 +1,17 @@ --- name: Check pull request message format on: pull_request_target: branches: - current - - crux - - equuleus - - sagitta - - circinus types: [opened, synchronize, edited] permissions: pull-requests: write contents: read jobs: check-pr-title: uses: vyos/.github/.github/workflows/check-pr-message.yml@current secrets: inherit diff --git a/.github/workflows/check-unused-imports.yml b/.github/workflows/check-unused-imports.yml index 17a52d3e4..2d868095c 100644 --- a/.github/workflows/check-unused-imports.yml +++ b/.github/workflows/check-unused-imports.yml @@ -1,18 +1,15 @@ name: Check for unused imports using Pylint on: pull_request: branches: - current - - equuleus - - sagitta - - circinus workflow_dispatch: permissions: pull-requests: write contents: read jobs: check-unused-imports: uses: vyos/.github/.github/workflows/check-unused-imports.yml@current secrets: inherit diff --git a/.github/workflows/codeql.yml b/.github/workflows/codeql.yml index 12654e42e..00387f725 100644 --- a/.github/workflows/codeql.yml +++ b/.github/workflows/codeql.yml @@ -1,22 +1,22 @@ name: "Perform CodeQL Analysis" on: push: - branches: [ "current", "sagitta", "equuleus", "circinus" ] + branches: [ "current" ] pull_request: # The branches below must be a subset of the branches above branches: [ "current" ] schedule: - cron: '22 10 * * 0' permissions: actions: read contents: read security-events: write jobs: codeql-analysis-call: uses: vyos/.github/.github/workflows/codeql-analysis.yml@current secrets: inherit with: languages: "['python']" diff --git a/.github/workflows/package-smoketest.yml b/.github/workflows/package-smoketest.yml index 08c8d42f5..36558f4ce 100644 --- a/.github/workflows/package-smoketest.yml +++ b/.github/workflows/package-smoketest.yml @@ -1,175 +1,174 @@ name: VyOS ISO integration Test on: pull_request_target: branches: - current - - circinus permissions: pull-requests: write contents: read env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} # Needed for PR comments jobs: build_iso: runs-on: ubuntu-24.04 timeout-minutes: 45 container: image: vyos/vyos-build:current options: --sysctl net.ipv6.conf.lo.disable_ipv6=0 --privileged env: BUILD_BY: autobuild@vyos.net DEBIAN_MIRROR: http://deb.debian.org/debian/ outputs: build_version: ${{ steps.version.outputs.build_version }} steps: - name: Clone vyos-build source code uses: actions/checkout@v4 with: repository: vyos/vyos-build - name: Clone vyos-1x source code uses: actions/checkout@v4 with: path: packages/vyos-1x - name: Build vyos-1x package run: | cd packages/vyos-1x; dpkg-buildpackage -uc -us -tc -b - name: Generate ISO version string id: version run: | echo "build_version=1.5-integration-$(date -u +%Y%m%d%H%M)" >> $GITHUB_OUTPUT - name: Build custom ISO image shell: bash run: | sudo --preserve-env ./build-vyos-image \ --architecture amd64 \ --build-by $BUILD_BY \ --debian-mirror $DEBIAN_MIRROR \ --version ${{ steps.version.outputs.build_version }} \ --build-type release \ generic - uses: actions/upload-artifact@v4 with: name: vyos-${{ steps.version.outputs.build_version }} path: build/live-image-amd64.hybrid.iso test_smoketest_cli: needs: build_iso runs-on: ubuntu-24.04 timeout-minutes: 180 container: image: vyos/vyos-build:current options: --sysctl net.ipv6.conf.lo.disable_ipv6=0 --privileged outputs: exit_code: ${{ steps.test.outputs.exit_code }} steps: # We need the test script from vyos-build repo - name: Clone vyos-build source code uses: actions/checkout@v4 with: repository: vyos/vyos-build - uses: actions/download-artifact@v4 with: name: vyos-${{ needs.build_iso.outputs.build_version }} path: build - name: VyOS CLI smoketests id: test shell: bash run: | # always fail first echo "exit_code=1" >> $GITHUB_OUTPUT sudo make test exit_code=$? echo "exit_code=$exit_code" >> $GITHUB_OUTPUT exit $exit_code test_config_load: needs: build_iso runs-on: ubuntu-24.04 timeout-minutes: 90 container: image: vyos/vyos-build:current options: --sysctl net.ipv6.conf.lo.disable_ipv6=0 --privileged outputs: exit_code: ${{ steps.test.outputs.exit_code }} steps: # We need the test script from vyos-build repo - name: Clone vyos-build source code uses: actions/checkout@v4 with: repository: vyos/vyos-build - uses: actions/download-artifact@v4 with: name: vyos-${{ needs.build_iso.outputs.build_version }} path: build - name: VyOS config load tests id: test shell: bash run: | # always fail first echo "exit_code=1" >> $GITHUB_OUTPUT sudo make testc exit_code=$? echo "exit_code=$exit_code" >> $GITHUB_OUTPUT exit $exit_code test_raid1_install: needs: build_iso runs-on: ubuntu-24.04 timeout-minutes: 20 container: image: vyos/vyos-build:current options: --sysctl net.ipv6.conf.lo.disable_ipv6=0 --privileged outputs: exit_code: ${{ steps.test.outputs.exit_code }} steps: # We need the test script from vyos-build repo - name: Clone vyos-build source code uses: actions/checkout@v4 with: repository: vyos/vyos-build - uses: actions/download-artifact@v4 with: name: vyos-${{ needs.build_iso.outputs.build_version }} path: build - name: VyOS RAID1 installation tests id: test shell: bash run: | # always fail first echo "exit_code=1" >> $GITHUB_OUTPUT sudo make testraid exit_code=$? echo "exit_code=$exit_code" >> $GITHUB_OUTPUT exit $exit_code result: needs: - test_smoketest_cli - test_config_load - test_raid1_install runs-on: ubuntu-24.04 timeout-minutes: 5 if: always() steps: - name: Add PR comment if: always() uses: mshick/add-pr-comment@v2 with: message: | CI integration ${{ needs.test_smoketest_cli.outputs.exit_code == 0 && needs.test_config_load.outputs.exit_code == 0 && needs.test_raid1_install.outputs.exit_code == 0 && '👍 passed!' || '❌ failed!' }} ### Details [CI logs](${{ github.server_url }}/${{ github.repository }}/actions/runs/${{ github.run_id }}) * ${{ needs.test_smoketest_cli.outputs.exit_code == '0' && '👍 passed' || '❌ failed' }} CLI Smoketests returned: ${{ needs.test_smoketest_cli.outputs.exit_code }} * ${{ needs.test_config_load.outputs.exit_code == '0' && '👍 passed' || '❌ failed' }} Config tests returned: ${{ needs.test_config_load.outputs.exit_code }} * ${{ needs.test_raid1_install.outputs.exit_code == '0' && '👍 passed' || '❌ failed' }} RAID1 tests returned: ${{ needs.test_raid1_install.outputs.exit_code }} message-id: "SMOKETEST_RESULTS" allow-repeats: false refresh-message-position: true