Skip to content

Merge master to feature branch #6348

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
85 commits
Select commit Hold shift + click to select a range
4d8f0e5
CP-52744: Thread `TraceContext` as json inside debug_info
GabrielBuica Dec 6, 2024
c64c5b0
CP-52744: Update `trace_context` when starting a context span
GabrielBuica Jan 23, 2025
30308b6
Use records when accumulating events
Feb 14, 2025
196f4e9
Remove mutable last_generation from Xapi_event
Feb 14, 2025
7b5c28f
Factor out event reification
Feb 14, 2025
5ea74d9
Use record type for individual event entries
Feb 17, 2025
801252a
Update datamodel_lifecycle for easier pool join.
gangj Feb 18, 2025
541124b
Update datamodel_lifecycle for easier pool join (#6310)
gangj Feb 18, 2025
56a06ad
Code refine.
gangj Jan 27, 2025
0ce8043
Add Helpers.internal_error
gangj Feb 11, 2025
fa929c4
CA-403867: Block pool join if IP not configured on cluster network
gangj Feb 11, 2025
a3f2c6e
CA-403744: Implement other_config operations
Jan 6, 2025
abd993a
CA-403867: Block pool join if IP not configured on joining cluster ne…
gangj Feb 19, 2025
c608902
CP-45795: Decompress compressed trace files without Forkexecd
snwoods Feb 10, 2025
3c53bdc
CP-53362: Rename hcp_nss to nss_override_id
liulinC Feb 18, 2025
f146978
CP-45795: Decompress compressed trace files without Forkexecd (#6293)
lindig Feb 20, 2025
1f269dd
Refactor Xapi_event (#6306)
contificate Feb 20, 2025
1131ecb
CA-403744: Implement other_config operations for task (#6239)
contificate Feb 20, 2025
eb06992
Restructure valid allowed_operations computation
Jan 22, 2025
41b84af
CP-52365 adjust interface to dmv-utils
Feb 19, 2025
41d458e
(docs) Mention that wait_xen_free_mem aborts on physinfo.scrub_pages==0
bernhardkaindl Feb 21, 2025
76f1d65
CA-407033: Call `receive_finalize2` synchronously
Vincent-lau Feb 20, 2025
8583c5e
Add internal links to XenAPI reference
Feb 21, 2025
df42cde
Add internal links to XenAPI reference (#6315)
contificate Feb 21, 2025
45b0b21
CP-53362: Rename hcp_nss to nss_override_id (#6311)
liulinC Feb 24, 2025
57eba37
CA-405643: Update DNF to DNF5
liulinC Feb 8, 2025
b5fb497
(docs) Mention that wait_xen_free_mem terminates on physinfo.scrub_pa…
lindig Feb 24, 2025
cadb6d0
CA-405643: Update DNF to DNF5 (#6316)
liulinC Feb 25, 2025
56ae24f
CP-52365 adjust interface to dmv-utils (#6314)
lindig Feb 25, 2025
9747c7d
Design proposal to support import/export of Qcow2 VDI
gthvn1 Feb 24, 2025
2629a91
message_forwarding: Change call_slave_... functions to reduce repetition
psafont Feb 25, 2025
8e48cb2
CA-407033: Call `receive_finalize2` synchronously (#6312)
Vincent-lau Feb 25, 2025
2686497
Add filter_by to Dm_api
Feb 25, 2025
631c901
Prefer Dm_api.filter_by over Dm_api.filter
Feb 25, 2025
72ab979
Use Cmdliner for gen_api_main.exe
Feb 25, 2025
d3612d1
CA-407322 - libs/rrd: Keep lastupdate XML field as int, XenCenter rel…
Feb 25, 2025
5e1f192
Use Cmdliner in gen_api_main.ml (#6319)
contificate Feb 26, 2025
d137934
fixup! Design proposal to support import/export of Qcow2 VDI
gthvn1 Feb 25, 2025
b604721
CP-52744: Thread `TraceContext` as JSON inside `debug_info` (#6230)
edwintorok Feb 26, 2025
0242eea
CA-407322 - libs/rrd: Keep lastupdate XML field as int, XenCenter rel…
last-genius Feb 26, 2025
46dec4b
Restructure valid allowed_operations computation (#6253)
contificate Feb 26, 2025
fd52035
message_forwarding: Change call_slave_... functions to reduce repetit…
robhoes Feb 26, 2025
1c0c039
CA-407328: Change vm parameter names of SXM calls
Vincent-lau Feb 25, 2025
61c6cd5
fixup! Design proposal to support import/export of Qcow2 VDI
gthvn1 Feb 26, 2025
e72ab51
CP-53708: Expose the existing PCI vendor/device IDs
changlei-li Feb 27, 2025
d5f67ad
Design proposal to support import/export of Qcow2 VDI (#6318)
lindig Feb 27, 2025
aa71400
CP-53444: For XenServer 9, remove python dnf plugins
stephenchengCloud Feb 26, 2025
14da91a
XSI-1821: Add pre-condition for host.emergency_reenable_tls_verification
gangj Feb 26, 2025
8ce5a53
Revert "CA-403867: Block pool join if IP not configured on cluster ne…
Vincent-lau Feb 27, 2025
69317dd
Update datamodel lifecycle
Vincent-lau Feb 27, 2025
90ef043
Revert "CA-403867: Block pool join if IP not configured on cluster ne…
gangj Feb 27, 2025
8174ac4
CP-50934: fix qemu cgroups to be compatible with cgroupv2
edwintorok Feb 27, 2025
4a9ef2a
CP-53444: For XenServer 9, remove python dnf plugins (#6326)
liulinC Feb 28, 2025
a4c058d
CP-53708: Expose the existing PCI vendor/device IDs (#6325)
minglumlu Feb 28, 2025
38d1595
CP-50934: fix qemu cgroups to be compatible with cgroupv2 (#6330)
edwintorok Feb 28, 2025
bf98fbf
opam: move stunnel metadata to dune-project
psafont Feb 27, 2025
6d0a145
github: restrict workflow permissions
psafont Feb 28, 2025
649d591
stdext: replace all ignore_type with annotated ignores
psafont Feb 27, 2025
4e88aba
xapi_vdi_helpers: actually write raw vdi when possible
psafont Feb 27, 2025
26da9f3
CA-399631: Increase the max size of xcp-rrdd-plugins for bug-tool
stephenchengCloud Mar 3, 2025
80b278b
CA-399631: Increase the max size of xcp-rrdd-plugins for bug-tool (#6…
lindig Mar 4, 2025
a86e5bb
CP-53779: Guard all `Tgroup` library call behind `tgroups-enabaled`
GabrielBuica Feb 28, 2025
bdd1e03
XSI-1821: Add pre-condition for host.emergency_reenable_tls_verificat…
gangj Mar 4, 2025
1b855d2
CA-407328: Change vm parameter names of SXM calls (#6324)
Vincent-lau Mar 4, 2025
f77f317
CP-53779: Guard all `Tgroup` library call behind `tgroups-enabled` (#…
edwintorok Mar 4, 2025
da73f08
github: restrict workflow permissions (#6333)
psafont Mar 4, 2025
b97788b
CI: add a codechecker workflow
edwintorok Apr 25, 2024
6ee60f1
[maintenance] xa_auth.h: avoid using reserved macro names
edwintorok Feb 21, 2025
2a0350f
unixpwd.c: fix error path file descriptor leak
edwintorok Feb 21, 2025
299cb6f
[maintenance] syslog_stubs.c: avoid using reserved identifier names
edwintorok Feb 21, 2025
23e01d7
[maintenance] blkgetsize64: avoid warning about uninit value
edwintorok Feb 21, 2025
4c1777e
CP-53747 document PEM/Certificate relation
Feb 27, 2025
198b021
CP-53747 document PEM/Certificate relation (#6329)
lindig Mar 5, 2025
f5cd21d
Run static analysis on OCaml C stubs in the CI (#6338)
edwintorok Mar 5, 2025
f2e6490
c_stubs: use 'new' acquire and release runtime functions
psafont Mar 6, 2025
8ca8328
c_stubs: use 'new' acquire and release runtime functions (#6341)
psafont Mar 6, 2025
d88446c
Hoist value access outside section without lock
Mar 6, 2025
468eb75
CA-407370: Use remote.conf for customer rsyslog forwarding rules
Feb 27, 2025
3a5b8d0
Hoist value access outside section without lock (#6342)
contificate Mar 6, 2025
c75fd8b
CA-407370: Use remote.conf for customer rsyslog forwarding rules (#6328)
robhoes Mar 6, 2025
1a09452
xapi_vdi_helpers: actually write raw vdi when possible (#6334)
psafont Mar 6, 2025
30ac25b
Revert: Refactor Xapi_event #6306
Mar 7, 2025
75a34ed
Revert: Refactor Xapi_event #6306 (#6347)
edwintorok Mar 7, 2025
9c0e533
Merge branch 'master' into private/changleli/merge-master-to-feature
changlei-li Mar 10, 2025
b6ced44
Update last_known_schema_hash and datamodel lifecycle
changlei-li Mar 10, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 6 additions & 0 deletions .codechecker.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
{
"analyze": [
"--disable=misc-header-include-cycle",
"--disable=clang-diagnostic-unused-parameter"
]
}
4 changes: 4 additions & 0 deletions .github/workflows/1.249-lcm.yml
Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
name: Build and test (1.249-lcm, scheduled)

permissions: {}

on:
schedule:
# run every Monday, this refreshes the cache
Expand All @@ -9,6 +11,8 @@ jobs:
python-test:
name: Python tests
runs-on: ubuntu-20.04
permissions:
contents: read
strategy:
fail-fast: false
matrix:
Expand Down
96 changes: 96 additions & 0 deletions .github/workflows/codechecker.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,96 @@
name: Run CodeChecker static analyzer on XAPI's C stubs
permissions: {}

on:
push:
pull_request:
branches:
- master
- 'feature/**'
- '*-lcm'

concurrency: # On new push, cancel old workflows from the same PR, branch or tag:
group: ${{ github.workflow }}-${{github.event_name}}-${{ github.event.pull_request.number || github.ref }}
cancel-in-progress: true

jobs:
staticanalyzer:
name: Static analyzer for OCaml C stubs
runs-on: ubuntu-latest
permissions:
contents: read
security-events: write
env:
XAPI_VERSION: "v0.0.0-${{ github.sha }}"

steps:
- name: Checkout code
uses: actions/checkout@v4

- name: Restore cache for compile_commands.json
uses: actions/cache/restore@v4
id: cache-cmds
with:
path: compile_commands.json
key: compile_commands.json-v1-${{ hashFiles('**/dune') }}

- name: Setup XenAPI environment
if: steps.cache-cmds.outputs.cache-hit != 'true'
uses: ./.github/workflows/setup-xapi-environment
with:
xapi_version: ${{ env.XAPI_VERSION }}

- name: Install dune-compiledb to generate compile_commands.json
if: steps.cache-cmds.outputs.cache-hit != 'true'
run: |
opam pin add -y ezjsonm https://github.com/mirage/ezjsonm/releases/download/v1.3.0/ezjsonm-1.3.0.tbz
opam pin add -y dune-compiledb https://github.com/edwintorok/dune-compiledb/releases/download/0.6.0/dune-compiledb-0.6.0.tbz

- name: Trim dune cache
if: steps.cache-cmds.outputs.cache-hit != 'true'
run: opam exec -- dune cache trim --size=2GiB

- name: Generate compile_commands.json
if: steps.cache-cmds.outputs.cache-hit != 'true'
run: opam exec -- make compile_commands.json

- name: Save cache for cmds.json
uses: actions/cache/save@v4
with:
path: compile_commands.json
key: ${{ steps.cache-cmds.outputs.cache-primary-key }}

- name: Upload compile commands json
uses: actions/upload-artifact@v4
with:
path: ${{ github.workspace }}/compile_commands.json

- uses: whisperity/codechecker-analysis-action@v1
id: codechecker
with:
ctu: true
logfile: ${{ github.workspace }}/compile_commands.json
analyze-output: "codechecker_results"

- name: Upload CodeChecker report
uses: actions/upload-artifact@v4
with:
name: codechecker_results
path: "${{ steps.codechecker.outputs.result-html-dir }}"

# cppcheck even for other analyzers apparently, this is
# codechecker's output
- name: convert to SARIF
shell: bash
run: report-converter "codechecker_results" --type cppcheck --output codechecker.sarif --export sarif

- name: Upload CodeChecker SARIF report
uses: actions/upload-artifact@v4
with:
name: codechecker_sarif
path: codechecker.sarif

- name: Upload SARIF report
uses: github/codeql-action/upload-sarif@v3
with:
sarif_file: codechecker.sarif
4 changes: 4 additions & 0 deletions .github/workflows/docs.yml
Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
name: Generate and upload docs

permissions: {}

on:
push:
branches: master
Expand All @@ -8,6 +10,8 @@ jobs:
ocaml:
name: Docs
runs-on: ubuntu-22.04
permissions:
contents: read
env:
XAPI_VERSION: "v0.0.0-${{ github.sha }}"
STORAGE_DOCDIR: .gh-pages-xapi-storage
Expand Down
4 changes: 4 additions & 0 deletions .github/workflows/format.yml
Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
name: Check format

permissions: {}

on:
pull_request:
branches:
Expand All @@ -12,6 +14,8 @@ jobs:
ocaml-format:
name: Ocaml files
runs-on: ubuntu-latest
permissions:
contents: read

steps:
- name: Checkout code
Expand Down
27 changes: 23 additions & 4 deletions .github/workflows/generate-and-build-sdks.yml
Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
name: Generate and Build SDKs

permissions: {}

on:
workflow_call:
inputs:
Expand All @@ -11,6 +13,9 @@ jobs:
generate-sdk-sources:
name: Generate SDK sources
runs-on: ubuntu-22.04
permissions:
contents: read

steps:
- name: Checkout code
uses: actions/checkout@v4
Expand All @@ -25,7 +30,7 @@ jobs:
run: opam exec -- make sdk

# sdk-ci runs some Go unit tests.
# This setting ensures that SDK date time
# This setting ensures that SDK date time
# tests are run on a machine that
# isn't using UTC
- name: Set Timezone to Tokyo for datetime tests
Expand Down Expand Up @@ -77,6 +82,9 @@ jobs:
name: Build C SDK
runs-on: ubuntu-latest
needs: generate-sdk-sources
permissions:
contents: read

steps:
- name: Install dependencies
run: sudo apt-get install libxml2-dev
Expand All @@ -103,6 +111,9 @@ jobs:
name: Build Java SDK
runs-on: ubuntu-latest
needs: generate-sdk-sources
permissions:
contents: read

steps:
- name: Install dependencies
run: sudo apt-get install maven
Expand All @@ -120,9 +131,9 @@ jobs:
distribution: 'temurin'

# Java Tests are run at compile time.
# This setting ensures that SDK date time
# This setting ensures that SDK date time
# tests are run on a machine that
# isn't using UTC
# isn't using UTC
- name: Set Timezone to Tokyo for datetime tests
run: |
sudo timedatectl set-timezone Asia/Tokyo
Expand All @@ -144,6 +155,9 @@ jobs:
name: Build C# SDK
runs-on: windows-2022
needs: generate-sdk-sources
permissions:
contents: read

steps:
- name: Strip 'v' prefix from xapi version
shell: pwsh
Expand All @@ -158,7 +172,7 @@ jobs:
# All tests builds and pipelines should
# work on other timezones. This setting ensures that
# SDK date time tests are run on a machine that
# isn't using UTC
# isn't using UTC
- name: Set Timezone to Tokyo for datetime tests
shell: pwsh
run: Set-TimeZone -Id "Tokyo Standard Time"
Expand Down Expand Up @@ -192,6 +206,9 @@ jobs:
# PowerShell SDK for PowerShell 5.x needs to run on windows-2019 because
# windows-2022 doesn't contain .NET Framework 4.x dev tools
runs-on: windows-2019
permissions:
contents: read

steps:
- name: Strip 'v' prefix from xapi version
shell: pwsh
Expand Down Expand Up @@ -265,6 +282,8 @@ jobs:
dotnet: ["6", "8"]
needs: build-csharp-sdk
runs-on: windows-2022
permissions:
contents: read

steps:
- name: Strip 'v' prefix from xapi version
Expand Down
5 changes: 5 additions & 0 deletions .github/workflows/hugo.yml
Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
name: Generate and upload Hugo docs

permissions: {}

on:
push:
branches: master
Expand All @@ -8,6 +10,9 @@ jobs:
ocaml:
name: Docs
runs-on: ubuntu-22.04
permissions:
contents: read


steps:
- name: Checkout code
Expand Down
4 changes: 4 additions & 0 deletions .github/workflows/main.yml
Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
name: Build and test

permissions: {}

on:
# When only Hugo docs change, this workflow is not required:
push:
Expand All @@ -20,6 +22,8 @@ jobs:
ocaml-tests:
name: Run OCaml tests
runs-on: ubuntu-22.04
permissions:
contents: read
env:
# Ensure you also update test-sdk-builds
# when changing this value, to keep builds
Expand Down
10 changes: 10 additions & 0 deletions .github/workflows/other.yml
Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
name: Build and test (other)

permissions: {}

on:
# When only Hugo docs change, this workflow is not required:
push:
Expand All @@ -20,6 +22,10 @@ jobs:
python-test:
name: Python tests
runs-on: ubuntu-22.04
permissions:
contents: read
pull-requests: write # allow commenting on the PR

strategy:
fail-fast: false
matrix:
Expand Down Expand Up @@ -96,6 +102,8 @@ jobs:
deprecation-test:
name: Deprecation tests
runs-on: ubuntu-22.04
permissions:
contents: read

steps:
- name: Checkout code
Expand All @@ -110,6 +118,8 @@ jobs:
test-sdk-builds:
name: Test SDK builds
uses: ./.github/workflows/generate-and-build-sdks.yml
permissions:
contents: read
with:
# Ensure you also update ocaml-tests
# when changing this value, to keep builds
Expand Down
10 changes: 10 additions & 0 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
name: Create release from tag

permissions: {}

on:
push:
tags:
Expand All @@ -9,6 +11,8 @@ jobs:
build-python:
name: Build and upload Python artifacts
runs-on: ubuntu-latest
permissions:
contents: read

steps:
- name: Checkout code
Expand Down Expand Up @@ -36,10 +40,15 @@ jobs:
build-sdks:
name: Build and upload SDK artifacts
uses: ./.github/workflows/generate-and-build-sdks.yml
permissions:
contents: read
with:
xapi_version: ${{ github.ref_name }}

release:
permissions:
contents: write # allow creating a release

name: "Create and package release"
runs-on: ubuntu-latest
needs: [build-python, build-sdks]
Expand Down Expand Up @@ -124,6 +133,7 @@ jobs:
needs: release
environment: pypi
permissions:
contents: read
id-token: write
steps:
- name: Retrieve python distribution artifacts
Expand Down
7 changes: 6 additions & 1 deletion .github/workflows/shellcheck.yaml
Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
name: ShellCheck

permissions: {}

on:
pull_request:
merge_group:
Expand All @@ -16,8 +18,11 @@ jobs:
runs-on: ubuntu-latest

permissions:
actions: read
contents: read
pull-requests: write # allow commenting on the PR
security-events: write

steps:
- name: Checkout code
uses: actions/checkout@v4
Expand Down
Loading
Loading