5353 COMMIT_ID : ${{ inputs.commit_id || github.sha }} # use commit_id from the calling workflow
5454
5555jobs :
56- input_selection :
57- if : |
58- (github.event_name == 'schedule' && github.repository_owner == 'securefederatedai') ||
59- (github.event_name == 'workflow_dispatch') ||
60- (github.event.pull_request.draft == false)
61- name : Input value selection
62- runs-on : ubuntu-22.04
63- outputs :
64- # Output all the variables related to models and python versions to be used in the matrix strategy
65- # for different jobs, however their usage depends on the selected job.
66- selected_models_for_tls : ${{ steps.input_selection.outputs.models_for_tls }}
67- selected_python_for_tls : ${{ steps.input_selection.outputs.python_for_tls }}
68- steps :
69- - name : Job to select input values
70- id : input_selection
71- run : |
72- if [ "${{ env.MODEL_NAME }}" == "all" ]; then
73- echo "models_for_tls=[\"torch/mnist\", \"keras/mnist\"]" >> "$GITHUB_OUTPUT"
74- else
75- echo "models_for_tls=[\"${{env.MODEL_NAME}}\"]" >> "$GITHUB_OUTPUT"
76- fi
77- if [ "${{ env.PYTHON_VERSION }}" == "all" ]; then
78- echo "python_for_tls=[\"3.10\", \"3.11\"]" >> "$GITHUB_OUTPUT"
79- else
80- echo "python_for_tls=[\"${{env.PYTHON_VERSION}}\"]" >> "$GITHUB_OUTPUT"
81- fi
82-
83- resiliency_in_native :
84- name : With TLS
85- needs : input_selection
56+ resiliency_in_native_gRPC :
57+ name : Resiliency in gRPC (torch/mnist, 3.10)
8658 runs-on : ubuntu-22.04
8759 timeout-minutes : 30
88- strategy :
89- matrix :
90- model_name : ${{ fromJson(needs.input_selection.outputs.selected_models_for_tls) }}
91- python_version : ${{ fromJson(needs.input_selection.outputs.selected_python_for_tls) }}
92- exclude : # Keras does not support Python 3.12
93- - model_name : " keras/mnist"
94- python_version : " 3.12"
95- fail-fast : false # do not immediately fail if one of the combinations fail
96-
9760 env :
98- MODEL_NAME : ${{ matrix .model_name }}
99- PYTHON_VERSION : ${{ matrix .python_version }}
61+ MODEL_NAME : ${{ inputs .model_name || 'torch/mnist' }}
62+ PYTHON_VERSION : ${{ inputs .python_version || '3.10' }}
10063
10164 steps :
10265 - name : Checkout OpenFL repository
@@ -121,6 +84,38 @@ jobs:
12184 uses : ./.github/actions/tr_post_test_run
12285 if : ${{ always() }}
12386 with :
124- test_type : " Resiliency_Native"
87+ test_type : " Resiliency_Native_gRPC"
88+
89+ # Uncomment below once Issue is resolved - https://github.com/securefederatedai/openfl/issues/1646
90+ # resiliency_in_native_rest:
91+ # name: Resiliency in REST (keras/tensorflow/mnist, 3.11)
92+ # runs-on: ubuntu-22.04
93+ # timeout-minutes: 30
94+ # env:
95+ # MODEL_NAME: ${{ inputs.model_name || 'keras/tensorflow/mnist' }}
96+ # PYTHON_VERSION: ${{ inputs.python_version || '3.11' }}
97+
98+ # steps:
99+ # - name: Checkout OpenFL repository
100+ # id: checkout_openfl
101+ # uses: actions/checkout@v4
102+ # with:
103+ # ref: ${{ env.COMMIT_ID }}
104+
105+ # - name: Pre test run
106+ # uses: ./.github/actions/tr_pre_test_run
107+ # if: ${{ always() }}
108+
109+ # - name: Run Task Runner E2E tests with TLS
110+ # id: run_tests
111+ # run: |
112+ # python -m pytest -s tests/end_to_end/test_suites/tr_resiliency_tests.py \
113+ # -m task_runner_basic --model_name ${{ env.MODEL_NAME }} \
114+ # --num_collaborators ${{ env.NUM_COLLABORATORS }} --num_rounds ${{ env.NUM_ROUNDS }} --tr_rest_protocol
115+ # echo "Task runner end to end test run completed"
125116
126- # TODO - Add dockerized approach as well once we have GitHub runners with higher configurations.
117+ # - name: Post test run
118+ # uses: ./.github/actions/tr_post_test_run
119+ # if: ${{ always() }}
120+ # with:
121+ # test_type: "Resiliency_Native_REST"
0 commit comments