Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
204 commits
Select commit Hold shift + click to select a range
fa05807
Update the option for pytest and the packages
lionelkusch Mar 18, 2025
485d120
Include a nice reporter commit
lionelkusch Mar 19, 2025
d6a4605
update version for json-crtf
lionelkusch Mar 19, 2025
daf94d6
Try fix error
lionelkusch Mar 19, 2025
2c44774
try to fix error
lionelkusch Mar 19, 2025
9b08753
Try to fix error
lionelkusch Mar 19, 2025
a3beda4
Update name of packages
lionelkusch Mar 19, 2025
8bbfcee
Update pass of the resport
lionelkusch Mar 19, 2025
2045dbe
Fix path of report
lionelkusch Mar 19, 2025
da36354
Add report to the PR
lionelkusch Mar 19, 2025
1810281
update github action
lionelkusch Mar 20, 2025
780e367
Update ne mof workflow
lionelkusch Mar 20, 2025
309a1a4
update github action
lionelkusch Mar 20, 2025
fec8a23
Update time limit
lionelkusch Mar 20, 2025
6b82c81
Use githu recommendation
lionelkusch Mar 20, 2025
86c61f2
dependence between tests and documentation
lionelkusch Mar 20, 2025
f5ff215
fix error in runnning tests
lionelkusch Mar 20, 2025
6f40be0
fix depedence with test
lionelkusch Mar 20, 2025
9704a16
reduce time of test ensemble cluster
lionelkusch Mar 20, 2025
681bc0d
Dependance with the lintter
lionelkusch Mar 20, 2025
a455f11
fix link between workflow
lionelkusch Mar 20, 2025
9ada446
Format file
lionelkusch Mar 20, 2025
5ddb204
fix workflow
lionelkusch Mar 20, 2025
74179e1
fix workflow
lionelkusch Mar 20, 2025
ad895fa
fix workflow
lionelkusch Mar 20, 2025
94de955
fix workflow
lionelkusch Mar 20, 2025
b5a49a8
fix workflow
lionelkusch Mar 20, 2025
216c2fc
Fix workflow dependance
lionelkusch Mar 20, 2025
11482b1
fix error
lionelkusch Mar 20, 2025
f9af447
fix workflow
lionelkusch Mar 20, 2025
b571f41
introduce a bug
lionelkusch Mar 20, 2025
b337ca7
dependance?
lionelkusch Mar 20, 2025
e27d660
fix bugs
lionelkusch Mar 20, 2025
1522ed3
dependency ?
lionelkusch Mar 20, 2025
95dc30d
test
lionelkusch Mar 20, 2025
603dcdf
tests
lionelkusch Mar 20, 2025
859f56b
Test
lionelkusch Mar 20, 2025
c87fdff
tests
lionelkusch Mar 20, 2025
b335c4b
TEst
lionelkusch Mar 20, 2025
60b33f3
TEST
lionelkusch Mar 20, 2025
533db0b
Fix bug
lionelkusch Mar 20, 2025
b7bbef3
fix bug
lionelkusch Mar 20, 2025
c527643
Add a reporter
lionelkusch Mar 20, 2025
eb7a610
Commit
lionelkusch Mar 20, 2025
318934c
tests
lionelkusch Mar 20, 2025
43b2242
Tests?
lionelkusch Mar 20, 2025
80497f9
Tests ?
lionelkusch Mar 20, 2025
a0d6a60
test ?
lionelkusch Mar 20, 2025
4562588
TEST
lionelkusch Mar 20, 2025
d8eb8b6
remove file
lionelkusch Mar 20, 2025
9d363f3
tests
lionelkusch Mar 20, 2025
1d356e0
TEST
lionelkusch Mar 20, 2025
2a74b26
ERREo
lionelkusch Mar 20, 2025
2047f23
Test workflow reuse
lionelkusch Mar 21, 2025
39227a0
Fix link to reusable workflow
lionelkusch Mar 21, 2025
7381b54
Fix reusable workflow
lionelkusch Mar 21, 2025
0b90724
FIX name of commit
lionelkusch Mar 21, 2025
bdc282c
fix link
lionelkusch Mar 21, 2025
d05f80c
Fix dependance
lionelkusch Mar 21, 2025
17f92dc
Fix error
lionelkusch Mar 21, 2025
35fd4d7
Fix dependance
lionelkusch Mar 21, 2025
69656fa
Error in one file
lionelkusch Mar 21, 2025
d931f52
Fix path of action
lionelkusch Mar 21, 2025
0877a0c
Fix path
lionelkusch Mar 21, 2025
3807c5b
Fix path workflow
lionelkusch Mar 21, 2025
ea56014
always report tests
lionelkusch Mar 21, 2025
78bef5a
Improev dependance
lionelkusch Mar 21, 2025
d2dde7a
outsource call workflow
lionelkusch Mar 21, 2025
7acaa95
fix workflow
lionelkusch Mar 21, 2025
067095e
Fix limitation wof worflows
lionelkusch Mar 21, 2025
2fe9621
Try
lionelkusch Mar 21, 2025
54a2c50
Improve debug print
lionelkusch Mar 21, 2025
8c68029
another trial
lionelkusch Mar 21, 2025
fb4e729
Fix error
lionelkusch Mar 21, 2025
60fa749
Test error of linter
lionelkusch Mar 21, 2025
2134b34
Remove a file
lionelkusch Mar 21, 2025
2beb849
Improve tests workflow
lionelkusch Mar 21, 2025
afb92d9
Fix lint issue
lionelkusch Mar 21, 2025
2032434
Fix tests error
lionelkusch Mar 21, 2025
da96203
Update workflow
lionelkusch Mar 21, 2025
412b2c6
test where are file
lionelkusch Mar 21, 2025
b2dbe07
try
lionelkusch Mar 21, 2025
7460e32
Fix upload
lionelkusch Mar 21, 2025
903d8f7
Fix file for coverage
lionelkusch Mar 21, 2025
090c33e
Update name artifact
lionelkusch Mar 21, 2025
74e89c1
Try to get data
lionelkusch Mar 21, 2025
91772ab
fix type error
lionelkusch Mar 21, 2025
3fc0746
Update path
lionelkusch Mar 21, 2025
4e68a4a
Update test
lionelkusch Mar 21, 2025
a7ed21b
Fix path
lionelkusch Mar 21, 2025
f8a0750
remove debug step
lionelkusch Mar 21, 2025
0fca850
Fix pattern
lionelkusch Mar 21, 2025
bffc2ce
test a second report
lionelkusch Mar 21, 2025
621f0b2
add packagefor mardown rendering
lionelkusch Mar 21, 2025
6903d61
include error
lionelkusch Mar 21, 2025
1811721
update the test skipt
lionelkusch Mar 21, 2025
42fb29b
update option for mardown
lionelkusch Mar 21, 2025
30fbe37
fix bug
lionelkusch Mar 21, 2025
902cab6
fix dependence for build doc
lionelkusch Mar 21, 2025
7e259ce
add reports in summary
lionelkusch Mar 21, 2025
6bb044e
test
lionelkusch Mar 21, 2025
62cd246
update the test_reporter
lionelkusch Mar 21, 2025
a4b9318
test only report summary
lionelkusch Mar 21, 2025
f7f1689
fix name of file
lionelkusch Mar 21, 2025
3a4e835
only summary by test_reporter
lionelkusch Mar 21, 2025
4afa29e
update reporter
lionelkusch Mar 21, 2025
422e1f5
change an option
lionelkusch Mar 21, 2025
a9f375c
fix usage of report_naem
lionelkusch Mar 21, 2025
474c4b6
fix usage of Report name
lionelkusch Mar 21, 2025
9d82979
add permission
lionelkusch Mar 21, 2025
5ba298f
fix bugs
lionelkusch Mar 21, 2025
02b0332
missing file ??
lionelkusch Mar 21, 2025
a8e67b3
fix path?
lionelkusch Mar 21, 2025
8437689
update report in summary
lionelkusch Mar 21, 2025
00c0278
fix bug
lionelkusch Mar 21, 2025
f67f09d
summary only ?
lionelkusch Mar 21, 2025
07009ee
put default parameters
lionelkusch Mar 21, 2025
088846a
don't push data if skipped
lionelkusch Mar 21, 2025
370d7c6
precommit??
lionelkusch Mar 21, 2025
2e6805d
Remove precommit
lionelkusch Mar 24, 2025
2cbd328
include html report
lionelkusch Mar 24, 2025
23a3522
include duration
lionelkusch Mar 24, 2025
b136d7a
add more package
lionelkusch Mar 24, 2025
b517c61
fix bug in artefact
lionelkusch Mar 24, 2025
5de8bca
Use black with jupyter
lionelkusch Mar 24, 2025
da4aa2f
Update the time for tests
lionelkusch Mar 24, 2025
1fb3942
Update for pushing HTML link
lionelkusch Mar 24, 2025
08882d9
fix reporter path
lionelkusch Mar 24, 2025
867f15f
Fix link between step
lionelkusch Mar 24, 2025
39016a2
update the place of files
lionelkusch Mar 24, 2025
ee91b06
Fix multiple upload files
lionelkusch Mar 24, 2025
41936ca
remove the html folder
lionelkusch Mar 24, 2025
a57e4b0
Fix bug
lionelkusch Mar 24, 2025
fe6ab3e
Fix error of folder
lionelkusch Mar 24, 2025
978499a
Increase a bit the time for test for being more resilent
lionelkusch Mar 24, 2025
5d9a2be
Remive the creation of file with link
lionelkusch Mar 24, 2025
8c780dc
update the style
lionelkusch Mar 24, 2025
1424a20
Remove no necessary file
lionelkusch Mar 24, 2025
b77e925
update files
lionelkusch Mar 24, 2025
9f51d65
debug element
lionelkusch Mar 24, 2025
856b29f
Remove debug element
lionelkusch Mar 24, 2025
5b57939
Remùove xml report
lionelkusch Mar 24, 2025
03264bf
push hmtl in mardown
lionelkusch Mar 24, 2025
a3a508d
fix bug
lionelkusch Mar 24, 2025
a8c0346
not use HTML
lionelkusch Mar 24, 2025
ab0ede6
Update .github/workflows/call_test_package.yml
lionelkusch Mar 26, 2025
f5c955c
add report HTML
lionelkusch Mar 26, 2025
42a56c6
remove permission
lionelkusch Mar 26, 2025
0df2ee9
add new way to add link
lionelkusch Mar 26, 2025
357ad5f
fix bug
lionelkusch Mar 26, 2025
415ca22
Fix link
lionelkusch Mar 26, 2025
d152e00
clean file
lionelkusch Mar 26, 2025
2c0c6f1
Add comments
lionelkusch Mar 26, 2025
2c3075a
add permission
lionelkusch Mar 28, 2025
e9e6853
Add a gihtub token for permission to write
lionelkusch Mar 28, 2025
934af27
Remove all permission
lionelkusch Mar 28, 2025
26b8d6e
one step_more for permission handle
lionelkusch Mar 28, 2025
0e9ba7d
remove the code deplace
lionelkusch Mar 28, 2025
41825d3
change permission
lionelkusch Mar 28, 2025
c6e644c
update permission
lionelkusch Mar 28, 2025
ca6ab91
fix permission
lionelkusch Mar 28, 2025
650f697
fix permission
lionelkusch Mar 28, 2025
ed9f029
update main
lionelkusch Mar 28, 2025
8a30bdb
fix url
lionelkusch Mar 28, 2025
3a423dc
debug
lionelkusch Mar 28, 2025
c3a1c53
fix url
lionelkusch Mar 28, 2025
7cbbafa
change permission
lionelkusch Mar 28, 2025
2e0d76f
fix url
lionelkusch Mar 28, 2025
b179a0b
improve commit
lionelkusch Mar 28, 2025
e85b5b7
change tag
lionelkusch Mar 28, 2025
320e64f
fix tag
lionelkusch Mar 28, 2025
6bcf5ba
test tag with fix number
lionelkusch Mar 28, 2025
0f2aa4f
Fix erro of tag name
lionelkusch Mar 28, 2025
6939d69
fix name tag
lionelkusch Mar 28, 2025
961d192
fix passing information
lionelkusch Mar 28, 2025
9c88696
Fix tag name
lionelkusch Mar 28, 2025
e77db56
change name tag
lionelkusch Mar 28, 2025
5e57776
fix condition for reporting
lionelkusch Mar 28, 2025
5df71c9
update comments
lionelkusch Mar 28, 2025
54acc6c
fix error
lionelkusch Mar 28, 2025
3c9e88d
Put back the error
lionelkusch Mar 28, 2025
784ec2b
fix error
lionelkusch Mar 28, 2025
0d0aba9
fix error when success
lionelkusch Mar 28, 2025
91d51e3
fixed bug of depedance
lionelkusch Mar 28, 2025
8481179
test cancel a job
lionelkusch Mar 28, 2025
20ea2a7
fix link
lionelkusch Mar 28, 2025
cb7b3a2
tests
lionelkusch Mar 28, 2025
16cc510
format file
lionelkusch Mar 28, 2025
6706ab2
fix path
lionelkusch Mar 28, 2025
6b7ee77
increase time out
lionelkusch Mar 28, 2025
0b52a7b
improve text
lionelkusch Mar 28, 2025
c37d393
fix issue for windows
lionelkusch Mar 28, 2025
054a2ba
add comments
lionelkusch Mar 28, 2025
36d540e
Add docstring
lionelkusch Mar 31, 2025
6049643
update permission
lionelkusch Mar 31, 2025
e165ee9
format document
lionelkusch Mar 31, 2025
21a5eae
fix error
lionelkusch Mar 31, 2025
2ece4fd
chaneg permission
lionelkusch Mar 31, 2025
03bb10e
chnage branches
lionelkusch Mar 31, 2025
0e21267
try to fix permission
lionelkusch Mar 31, 2025
339ba9e
remove the creation of an url for the test
lionelkusch Mar 31, 2025
ef911ac
Merge branch 'main' into PR_test_config
lionelkusch Mar 31, 2025
85823d3
ramove permission
lionelkusch Mar 31, 2025
d6f6701
fix error of empty file
lionelkusch Mar 31, 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
10 changes: 0 additions & 10 deletions .github/workflows/black.yml

This file was deleted.

36 changes: 0 additions & 36 deletions .github/workflows/build_package.yml

This file was deleted.

18 changes: 18 additions & 0 deletions .github/workflows/call_black.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
# For more information see: https://black.readthedocs.io/en/stable/integrations/github_actions.html
name: Lint

on:
# Allows you to run this workflow from another workflow
workflow_call

# disable all the permission for the workflow
permissions: {}

jobs:
lint:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: psf/black@stable
with:
jupyter: true
38 changes: 38 additions & 0 deletions .github/workflows/call_build_docs.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
name: Documentation

on:
# Allows you to run this workflow from another workflow
workflow_call:

env:
# Force to use color
FORCE_COLOR: true
BROWSER: /usr/bin/firefox
DISPLAY: :99.0

# disable all the permission for the workflow
permissions: {}

jobs:
build_docs:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-python@v5
with:
python-version: '3.12'
- name: Install dependencies
run: |
python -m pip install -e .
python -m pip install .[doc,plotting]
- name: Sphinx build
id: build-docs
run: |
sphinx-build -b html doc_conf doc/_build/html
- name: Upload documentation
if: steps.build-docs.outcome == 'success'
uses: actions/upload-artifact@v4
with:
name: DocHTML
path: doc/_build/html

Original file line number Diff line number Diff line change
@@ -1,47 +1,17 @@
name: Documentation

on:
pull_request:
push:
branches: main
# Allows you to run this workflow manually from the Actions tab
workflow_dispatch:
# Allows you to run this workflow from another workflow
workflow_call:

env:
# Force to use color
FORCE_COLOR: true
BROWSER: /usr/bin/firefox
DISPLAY: :99.0

# disable all the permission for the workflow
permissions:
contents: write
contents: write

jobs:
build_docs:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-python@v5
with:
python-version: '3.12'
- name: Install dependencies
run: |
python -m pip install -e .
python -m pip install .[doc,plotting]
- name: Sphinx build
id: build-docs
run: |
sphinx-build -b html doc_conf doc/_build/html
- name: Upload documentation
if: steps.build-docs.outcome == 'success'
uses: actions/upload-artifact@v4
with:
name: DocHTML
path: doc/_build/html

deploy_on_main:
runs-on: ubuntu-latest
needs: [build_docs]
# add permission to write for create a commit with the updated library
if: ${{ contains(fromJSON('["push", "workflow_dispatch", "schedule"]'), github.event_name)}}
steps:
- name: Download artifacts
Expand All @@ -67,4 +37,4 @@ jobs:
branch: main
directory: hidimstat
github_token: ${{ secrets.GITHUB_TOKEN }}


75 changes: 75 additions & 0 deletions .github/workflows/call_publish_result.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,75 @@
name: Publish Tests

on:
# Allows you to run this workflow from another workflow
workflow_call:

# disable all the permission for the workflow
permissions: {}

jobs:

merge_md_test_data:
# for more details
# https://github.com/thombashi/pytest-md-report
runs-on: ubuntu-latest
permissions:
pull-requests: write
steps:
# get report from previous job
- name: Get data
uses: actions/download-artifact@v4
with:
pattern: pytest-results-md-*-os-*
# add manual link to render the HTML commit on the reporter_test branch
# the rendering is based on the trick propose here:
# https://github.com/htmlpreview/htmlpreview.github.com
# TODO Determine the link to the circleci
- name: Update mardown
shell: bash
run: |
for FOLDER in *;
do
SUFFIX=$(echo $FOLDER | sed 's/pytest-results-md-//g');
#LINK=""
#echo -e "\n [HTML tests summary]($LINK)" >> ${FOLDER}/test-results-${SUFFIX}.md
done
- name: ls
shell: bash
run: ls -Rl
# create a comment in the PR with the failling tests
# for more details: https://github.com/marocchino/sticky-pull-request-comment
- name: Render the report to the PR
uses: marocchino/sticky-pull-request-comment@v2
with:
header: test-report
recreate: true
path: ./pytest-results-md-3.13-os-macos-latest/test-results-3.13-os-macos-latest.md #CHECK: need to be updated when new version are available
# create a comment in the summary with the failling tests
- name: Output reports to the job summary when tests fail
shell: bash
run: |
for folder in *;
do
echo "<details><summary>Failed Test Report: $folder</summary>" >> $GITHUB_STEP_SUMMARY
echo "" >> $GITHUB_STEP_SUMMARY
cat $folder/*.md >> $GITHUB_STEP_SUMMARY
echo "" >> $GITHUB_STEP_SUMMARY
echo "</details>" >> $GITHUB_STEP_SUMMARY
done

merge_upload_coverage_data:
runs-on: ubuntu-latest
steps:
# get coverage only for 1 job
- name: Get data
uses: actions/download-artifact@v4
with:
pattern: cov-results-3.13-os-macos-latest #CHECK: need to be updated when new version are available
# Upload coverage report for Codecov
- name: Upload coverage reports to Codecov
uses: codecov/codecov-action@v5
with:
token: ${{ secrets.CODECOV_TOKEN }}
verbose: true
files: cov-results-3.13-os-macos-latest/cov-3.13-os-macos-latest.xml #CHECK: need to be updated when new version are available
84 changes: 84 additions & 0 deletions .github/workflows/call_test_package.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,84 @@
# This workflow will install Python dependencies, run tests and lint with a variety of Python versions
# For more information see: https://docs.github.com/en/actions/automating-builds-and-tests/building-and-testing-python

name: Tests

on:
# Allows you to run this workflow from another workflow
workflow_call:

# disable all the permission for the workflow
permissions: {}

jobs:
build-test:
runs-on: ${{ matrix.os }}
strategy:
fail-fast: true # if on job fail all the other jobs are cancelled
matrix:
python-version: ["3.13", "3.12"] #CHECK: not forget to add new version of python
os: [macos-latest, ubuntu-latest, windows-latest]

# name for files
env:
REPORT_NAME: ${{ matrix.python-version }}-os-${{ matrix.os }}

steps:
# Checkout to the branch for getting the right code
- uses: actions/checkout@v4
# Install python
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}
# Install dependency for running the tests
- name: Install the dependance
run: |
python -m pip install --upgrade pip
python -m pip install .[test]
# Run the tests with coverage and report add this end
# option for the coverage: --cov=. --cov-report=xml:...
# option for mardown report: --md-report --md-report-output= ...
# option for html report: --self-contained-html --html=report-...
# option for duration report: --pytest-durations= number of second --pytest-resultlog=log-...
# inline command for being compatible on linux and windows
- name: Generate coverage report
run: |
python -m pytest --cov=. --cov-report=xml:cov/cov-${{env.REPORT_NAME}}.xml --md-report --md-report-output=test-results-${{env.REPORT_NAME}}.md --self-contained-html --html=report-${{env.REPORT_NAME}}.html --pytest-durations=10 --pytest-resultlog=log-${{env.REPORT_NAME}}.txt

- name: generate an empty mardown report if succeed
if: ${{ success()}}
shell: bash
run: |
echo "SUCCESS" >> test-results-${{env.REPORT_NAME}}.md

# publish different reports (HTML, Mardown, Coverage)
- name: Upload HTML test result
if: ${{ always() && !cancelled()}}
id: html_report
uses: actions/upload-artifact@v4
with:
name: pytest-results-html-${{env.REPORT_NAME}}
path: report-${{env.REPORT_NAME}}.html
if-no-files-found: error
- name: Upload md test result
if: ${{ always() && !cancelled()}}
uses: actions/upload-artifact@v4
with:
name: pytest-results-md-${{env.REPORT_NAME}}
path: test-results-${{env.REPORT_NAME}}.md
if-no-files-found: error
- name: Upload duration test result
if: ${{ always() && !cancelled()}}
uses: actions/upload-artifact@v4
with:
name: pytest-results-log-${{env.REPORT_NAME}}
path: log-${{env.REPORT_NAME}}.txt
if-no-files-found: error
- name: Upload coverage data
if: ${{ always() && !cancelled()}}
uses: actions/upload-artifact@v4
with:
name: cov-results-${{env.REPORT_NAME}}
path: cov/cov-${{env.REPORT_NAME}}.xml
if-no-files-found: error
59 changes: 59 additions & 0 deletions .github/workflows/main_workflow.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,59 @@
# Management of the action do made during a pull request

name: 'Main_workflow'
on:
pull_request:
branches: main
# allows to push on branches
push:
branches: main

# disable all the permission for the workflow
permissions: {}

# Cancel existing runs
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true

jobs:
linter:
name: Linter
uses: ./.github/workflows/call_black.yml

tests:
name: tests
needs: [linter]
uses: ./.github/workflows/call_test_package.yml

tests_publish:
name: tests_publish
needs: [tests]
if: ${{ needs.tests.result != 'cancelled' }}
permissions:
pull-requests: write
uses: ./.github/workflows/call_publish_result.yml

make_documentation:
name: Make_documentation
needs: [linter, tests]
uses: ./.github/workflows/call_build_docs.yml

deploy_documentation:
name:
needs: [make_documentation]
permissions:
contents: write
uses: ./.github/workflows/call_deploy_on_main.yml

# debugger:
# needs: linter
# env:
# STATE_LINTER: ${{ needs.linter.result }}
# runs-on: ubuntu-latest
# steps:
# - name: print output
# run:
# echo "Linter "$STATE_LINTER
# if: ${{ always() }}

Loading