diff --git a/.github/workflows/ci.yaml b/.github/workflows/ci.yaml index b25ea3a0..f3e540a6 100644 --- a/.github/workflows/ci.yaml +++ b/.github/workflows/ci.yaml @@ -15,7 +15,6 @@ jobs: runs-on: ubuntu-latest outputs: robotmk_yaml_changed: ${{ steps.filter.outputs.robotmk_yaml }} - rcc_yaml_changed: ${{ steps.filter.outputs.rcc_yaml }} steps: - uses: actions/checkout@v4 - uses: dorny/paths-filter@v2 @@ -24,29 +23,24 @@ jobs: filters: | robotmk_yaml: - '.github/workflows/robotmk_build.yaml' - rcc_yaml: - - '.github/workflows/rcc.yaml' tests: if: always() uses: ./.github/workflows/tests.yaml - system_tests: - if: always() - uses: ./.github/workflows/system_tests.yaml - build_robotmk: needs: - analyse_changes if: ${{ needs.analyse_changes.outputs.robotmk_yaml_changed == 'true' }} uses: ./.github/workflows/robotmk_build.yaml - + rcc: - needs: - - analyse_changes - if: ${{ needs.analyse_changes.outputs.rcc_yaml_changed == 'true' }} uses: ./.github/workflows/rcc.yaml + system_tests: + needs: rcc + uses: ./.github/workflows/system_tests.yaml + check_success: if: always() runs-on: Ubuntu-latest diff --git a/.github/workflows/rcc.yaml b/.github/workflows/rcc.yaml index b82fd2ee..1e489d16 100644 --- a/.github/workflows/rcc.yaml +++ b/.github/workflows/rcc.yaml @@ -2,8 +2,7 @@ name: "RCC" on: - workflow_call: - {} + workflow_call: {} env: RCC_TAG: "b18cdacf4cd9dbc1c921b2c0acc1ab9e7d02dae9" # Update omd/Licenses.csv in the Checkmk repo when changing this. @@ -60,7 +59,8 @@ jobs: path: build key: rcc-${{ env.RCC_TAG }}-${{ env.GO_VERSION }}-${{ env.RUBY_VERSION }} fail-on-cache-miss: true - - uses: actions/upload-artifact@v3 + - uses: actions/upload-artifact@v4 with: - path: build + name: rcc + path: build/ if-no-files-found: error diff --git a/.github/workflows/release.yaml b/.github/workflows/release.yaml index fe57423a..b146a6ca 100644 --- a/.github/workflows/release.yaml +++ b/.github/workflows/release.yaml @@ -14,21 +14,24 @@ on: jobs: tests: uses: ./.github/workflows/tests.yaml - system_tests: - uses: ./.github/workflows/system_tests.yaml - build_rcc: + rcc: uses: ./.github/workflows/rcc.yaml + system_tests: + needs: rcc + uses: ./.github/workflows/system_tests.yaml build_robotmk: uses: ./.github/workflows/robotmk_build.yaml release: runs-on: ubuntu-latest - needs: [tests, system_tests, build_rcc, build_robotmk] + needs: [tests, system_tests, rcc, build_robotmk] steps: - uses: actions/checkout@v4 # Determines the ref, which is used for the # release. For setting a different ref, all `needs` jobs need to be # adjusted. Currently, everything uses the default branch. - - uses: actions/download-artifact@v3 + - uses: actions/download-artifact@v4 + with: + path: artifact/ - run: zip -r executables.zip artifact diff --git a/.github/workflows/robotmk_build.yaml b/.github/workflows/robotmk_build.yaml index 81fd2247..585fea82 100644 --- a/.github/workflows/robotmk_build.yaml +++ b/.github/workflows/robotmk_build.yaml @@ -3,11 +3,9 @@ name: "Build Robotmk" on: workflow_call: {} - jobs: - build_robotmk_from_source: + build_robotmk: runs-on: windows-latest - steps: - uses: actions/checkout@v4 @@ -17,8 +15,9 @@ jobs: - run: cargo build --target=x86_64-pc-windows-gnu --release - - uses: actions/upload-artifact@v3 + - uses: actions/upload-artifact@v4 with: + name: rmk_windows64 path: | ${{ github.workspace }}/target/x86_64-pc-windows-gnu/release/robotmk_scheduler.exe ${{ github.workspace }}/target/x86_64-pc-windows-gnu/release/robotmk_agent_plugin.exe diff --git a/.github/workflows/system_tests.yaml b/.github/workflows/system_tests.yaml index d9ebc55e..19920ab0 100644 --- a/.github/workflows/system_tests.yaml +++ b/.github/workflows/system_tests.yaml @@ -5,16 +5,12 @@ on: workflow_call: {} jobs: - rcc: - uses: ./.github/workflows/rcc.yaml - test_scheduler: runs-on: windows-latest - needs: - - rcc steps: - - uses: actions/download-artifact@v3 + - uses: actions/download-artifact@v4 with: + name: rcc path: C:\ - uses: actions/checkout@v4 - uses: actions-rust-lang/setup-rust-toolchain@v1.5.0 @@ -23,8 +19,9 @@ jobs: - run: cargo test --target=x86_64-pc-windows-gnu --test test_scheduler -- --nocapture --ignored env: TEST_DIR: C:\test_scheduler - RCC_BINARY_PATH: C:\artifact\windows64\rcc.exe + RCC_BINARY_PATH: C:\rcc\windows64\rcc.exe RUN_FOR: 240 - - uses: actions/upload-artifact@v3 + - uses: actions/upload-artifact@v4 with: + name: system_test_debug_information path: C:\test_scheduler