Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
55 commits
Select commit Hold shift + click to select a range
281b2fa
Fixing pipelines with timeout
RaunakJalan Jun 30, 2026
e7c6afb
Merge branch 'main' of github.com:simplyblock/sbcli into fixing-grayl…
RaunakJalan Jun 30, 2026
a8a10e4
Fixing pipelines with timeout
RaunakJalan Jul 1, 2026
6679d0a
Merge branch 'main' of github.com:simplyblock/sbcli into fixing-grayl…
RaunakJalan Jul 1, 2026
d026888
Fixing summary message step and clone issue from tests
RaunakJalan Jul 1, 2026
37907aa
Fixing summary message step and clone issue from tests
RaunakJalan Jul 2, 2026
e2c93d5
Fixing summary message step and clone issue from tests
RaunakJalan Jul 2, 2026
c51bc7e
Fixing summary message step and clone issue from tests
RaunakJalan Jul 2, 2026
36b0da3
Fixing summary message step and clone issue from tests
RaunakJalan Jul 2, 2026
d398656
Fixing summary message step and clone issue from tests
RaunakJalan Jul 2, 2026
e4cb8cd
Merge branch 'main' of github.com:simplyblock/sbcli into fixing-grayl…
RaunakJalan Jul 3, 2026
f6f753f
Adding detail collection before deletes
RaunakJalan Jul 3, 2026
795af0e
Adding new cases and fixing log collector
RaunakJalan Jul 4, 2026
bb5f7ae
Adding new cases and fixing log collector
RaunakJalan Jul 4, 2026
849f815
Adding parallel log collector
RaunakJalan Jul 4, 2026
a1bd0a6
Adding parallel log collector
RaunakJalan Jul 4, 2026
e7feb76
Adding new tests and reducing distrib dump counts
RaunakJalan Jul 4, 2026
a86edac
Adding new tests and reducing distrib dump counts
RaunakJalan Jul 4, 2026
83b8bc0
Adding new tests and reducing distrib dump counts
RaunakJalan Jul 4, 2026
aa196a7
Adding new tests and reducing distrib dump counts
RaunakJalan Jul 4, 2026
f92d0d1
Adding new tests and reducing distrib dump counts
RaunakJalan Jul 5, 2026
6e070b5
Adding new tests and reducing distrib dump counts
RaunakJalan Jul 5, 2026
7b1b656
Adding new tests and reducing distrib dump counts
RaunakJalan Jul 5, 2026
6ba725d
Adding new tests and reducing distrib dump counts
RaunakJalan Jul 6, 2026
73e760c
Fixing e2e tests and mass create changes
RaunakJalan Jul 7, 2026
e0f892f
Fixing e2e tests and mass create changes
RaunakJalan Jul 7, 2026
8a5ab6d
Fixing e2e tests and mass create changes
RaunakJalan Jul 8, 2026
ed18129
Fixing e2e tests and mass create changes
RaunakJalan Jul 8, 2026
03bc2b0
Fixing e2e tests and mass create changes
RaunakJalan Jul 8, 2026
c44397e
Fixing e2e tests and mass create changes
RaunakJalan Jul 8, 2026
1f8066d
Adding new test
RaunakJalan Jul 9, 2026
96c82f4
Fixing e2e tests and mass create changes
RaunakJalan Jul 10, 2026
c8f86d4
Fixing e2e tests and mass create changes
RaunakJalan Jul 10, 2026
5bcc0b6
Fixing e2e tests and mass create changes
RaunakJalan Jul 10, 2026
25f72e0
Adding k8s log collection
RaunakJalan Jul 12, 2026
e45d7fa
Adding k8s log collection
RaunakJalan Jul 12, 2026
eac7ce2
Adding bulk break test
RaunakJalan Jul 12, 2026
e970ee0
Adding bulk break test
RaunakJalan Jul 13, 2026
8668347
Adding bulk break test
RaunakJalan Jul 13, 2026
8e86d56
Adding bulk break test
RaunakJalan Jul 14, 2026
0033da5
Adding bulk break test
RaunakJalan Jul 14, 2026
4bea0bd
Adding parity tests
RaunakJalan Jul 15, 2026
17f24a2
Adding parity tests
RaunakJalan Jul 15, 2026
505f455
Adding parity tests
RaunakJalan Jul 15, 2026
065c0b4
Fixing node migration
RaunakJalan Jul 15, 2026
f005077
Fixing node migration
RaunakJalan Jul 16, 2026
5e16481
Fixing node migration
RaunakJalan Jul 16, 2026
6e8af9f
Fixing fio logs in mass create
RaunakJalan Jul 16, 2026
0b63065
Fixing fio logs in mass create
RaunakJalan Jul 16, 2026
08c49d1
Merge branch 'main' of github.com:simplyblock/sbcli into fixing-grayl…
RaunakJalan Jul 16, 2026
c9f2f9a
Fixing fio logs in mass create
RaunakJalan Jul 16, 2026
b954596
Fixing fio logs in mass create
RaunakJalan Jul 16, 2026
aa64841
Commenting new cases for now
RaunakJalan Jul 17, 2026
b8b4fdc
Commenting new cases for now
RaunakJalan Jul 17, 2026
af864b5
cert manager fix for talos
RaunakJalan Jul 17, 2026
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
180 changes: 180 additions & 0 deletions .github/workflows/api-parity-audit.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,180 @@
name: API Parity Audit

on:
workflow_dispatch:
inputs:
cluster:
default: c141
description: "Cluster to deploy on"
required: true
type: string
sbcli_branch:
description: "sbcli branch to test"
required: false
default: main
type: string
send_slack_notification:
description: 'Send Slack notification?'
required: false
default: false
type: boolean
schedule:
- cron: '0 6 * * 1' # Weekly on Monday 6am UTC

concurrency:
group: ${{ github.workflow }}
cancel-in-progress: false

jobs:
cleanup:
runs-on: self-hosted
steps:
- name: Fix workspace permissions
run: sudo chown -R "$(id -u):$(id -g)" "$GITHUB_WORKSPACE" 2>/dev/null || true

- name: Checkout deployment tooling
uses: actions/checkout@v4
with:
repository: simplyblock-io/simplyBlockDeploy
path: deploy

- name: cleanup cluster
timeout-minutes: 15
run: |
cd deploy/bare-metal
cluster="${{ inputs.cluster || 'c141' }}"
cluster="${cluster:1}"
echo "cleaning up cluster $cluster"
KEY="~/.ssh/simplyblock-us-east-2.pem"
eval $(python3 inventory.py inventory/c${cluster}.yml)
ssh -i $KEY -o StrictHostKeyChecking=no root@192.168.10.1 "bash proxmox_script.sh cluster_${cluster}"

deploy:

Check warning

Code scanning / CodeQL

Workflow does not contain permissions Medium

Actions job or workflow does not limit the permissions of the GITHUB_TOKEN. Consider setting an explicit permissions block, using the following as a minimal starting point: {contents: read}
Comment on lines +30 to +52
needs: cleanup
uses: ./.github/workflows/bare-metal-deploy.yml
with:
runs_on: self-hosted
cluster: ${{ inputs.cluster || 'c141' }}
docker_image: simplyblock/simplyblock:${{ github.head_ref || github.ref_name }}
sbcli_source: ${{ github.head_ref || github.ref_name }}
k8s_snode: false

audit:

Check warning

Code scanning / CodeQL

Workflow does not contain permissions Medium

Actions job or workflow does not limit the permissions of the GITHUB_TOKEN. Consider setting an explicit permissions block, using the following as a minimal starting point: {}
Comment on lines +53 to +62
runs-on: self-hosted
needs: deploy
steps:
- name: Fix workspace permissions
run: sudo chown -R "$(id -u):$(id -g)" "$GITHUB_WORKSPACE" 2>/dev/null || true

- name: Checkout code
uses: actions/checkout@v4
with:
ref: ${{ inputs.sbcli_branch || github.ref_name }}

- name: Record Audit Start Time
run: echo "AUDIT_START_TIME=$(date +%s)" >> $GITHUB_ENV

- name: Setup & Run Parity Audit
timeout-minutes: 60
env:
CLUSTER_ID: ${{ needs.deploy.outputs.cluster_id }}
CLUSTER_SECRET: ${{ needs.deploy.outputs.cluster_secret }}
CLUSTER_IP: ${{ needs.deploy.outputs.cluster_ip }}
API_BASE_URL: ${{ needs.deploy.outputs.cluster_ip }}
KEY_NAME: "simplyblock-us-east-2.pem"
SSH_USER: root
SBCLI_CMD: "sbctl"
MNODES: "${{ needs.deploy.outputs.mnodes }}"
run: |
cd $GITHUB_WORKSPACE/e2e
pip install virtualenv
python3 -m venv myenv
source myenv/bin/activate
python3 -m pip install -r requirements.txt
echo "Running API Parity Audit"
python3 e2e.py --testname TestAPIParityAudit

- name: Record Audit End Time
if: always()
run: echo "AUDIT_END_TIME=$(date +%s)" >> $GITHUB_ENV

- name: Calculate Total Time Taken
if: always()
run: |
AUDIT_TIME=$(($AUDIT_END_TIME - $AUDIT_START_TIME))
AUDIT_TIME_MINS=$((AUDIT_TIME / 60))
AUDIT_TIME_SECS=$((AUDIT_TIME % 60))
echo "Audit runtime: ${AUDIT_TIME_MINS}m ${AUDIT_TIME_SECS}s"
echo "AUDIT_TIME_MINS=$AUDIT_TIME_MINS" >> $GITHUB_ENV
echo "AUDIT_TIME_SECS=$AUDIT_TIME_SECS" >> $GITHUB_ENV

- name: Upload HTML report
if: always()
uses: actions/upload-artifact@v4
with:
name: api-parity-report
path: |
e2e/logs/**/api_parity_report.html
e2e/logs/**/api_parity_findings.json
retention-days: 30
if-no-files-found: warn

- name: Post Job Summary
if: always()
run: |
{
echo "## API Parity Audit Results"
echo ""
echo "**Branch:** \`${{ github.ref_name }}\`"
echo "**Duration:** ${AUDIT_TIME_MINS:-0}m ${AUDIT_TIME_SECS:-0}s"
echo ""
} >> "$GITHUB_STEP_SUMMARY"

# Try to extract summary counts from JSON sidecar
JSON_FILE=$(find $GITHUB_WORKSPACE/e2e/logs -name "api_parity_findings.json" 2>/dev/null | head -1)
if [ -n "$JSON_FILE" ] && [ -f "$JSON_FILE" ]; then
python3 -c "
import json
with open('${JSON_FILE}') as f:
findings = json.load(f)
total = len(findings)
errors = sum(1 for f in findings if f.get('severity') == 'error')
warnings = sum(1 for f in findings if f.get('severity') == 'warning')
info = sum(1 for f in findings if f.get('severity') == 'info')
print(f'| Severity | Count |')
print(f'|----------|-------|')
print(f'| **Total** | {total} |')
print(f'| Errors | {errors} |')
print(f'| Warnings | {warnings} |')
print(f'| Info | {info} |')
print()
if errors > 0:
print('> :warning: **Errors found** — download the HTML report artifact for details.')
else:
print('> :white_check_mark: No errors detected.')
" >> "$GITHUB_STEP_SUMMARY"
else
echo "> :warning: No findings JSON found — audit may have failed before producing output." >> "$GITHUB_STEP_SUMMARY"
fi

echo "" >> "$GITHUB_STEP_SUMMARY"
echo "**Report artifact:** \`api-parity-report\`" >> "$GITHUB_STEP_SUMMARY"

- name: Upload logs to MinIO
if: always()
env:
GITHUB_RUN_ID: ${{ github.run_id }}
MINIO_ACCESS_KEY: ${{ secrets.MINIO_ACCESS_KEY }}
MINIO_SECRET_KEY: ${{ secrets.MINIO_SECRET_KEY }}
MNODES: "${{ needs.deploy.outputs.mnodes }}"
STORAGE_PRIVATE_IPS: "${{ needs.deploy.outputs.storage_private_ips }}"
USER: "root"
run: |
cd $GITHUB_WORKSPACE/e2e/
python3 logs/upload_logs_to_miniio.py

- name: Cleanup build folder
if: always()
run: |
rm -rf ./* || true
rm -rf ./.??* || true

Check warning

Code scanning / CodeQL

Workflow does not contain permissions Medium

Actions job or workflow does not limit the permissions of the GITHUB_TOKEN. Consider setting an explicit permissions block, using the following as a minimal starting point: {contents: read}
Comment on lines +63 to +180
Loading
Loading